/* * As variáveis abaixo devem sempre estar declaradas no javascript do site em desenvolvimento, pois são esperadas pelos serviços Spaic */ // Série usada nos imóveis gcSpaSrImv = ""; // Série usada para inquilinos e proprietários gcSpaSrInqPro = ""; // Nome do container principal da página (aquele que contém todo o conteúdo) gcSpaIDCtnBase = "content"; // Nome do container onde os resultados das pesquisas serão exibidos gcSpaIDCtn = "content"; // Usuário e senha do proprietário gcSpaProUsu = ""; gcSpaProSen = ""; // Usuário e senha do inquilino gcSpaInqUsu = ""; gcSpaInqSen = ""; // Código da Captcha digitado pelo usuário oCaptcha = ""; /* * cOutros é uma string com outros parâmetros que se deseje passar separados por vírgula. Assim podemos criar novos parâmetros mais a vontade. O formato é "nome-valor,outro_nome-valor..." */ function carregaPagina(nServ, cSerie, cOutros) { cOutros = cOutros.replace(/-/g, "="); if (nServ == 1) { gcSpaSrImv = cSerie; doPesqLat(cOutros); } else if (nServ == 2) { gcSpaSrInqPro = cSerie; doProprietarios(cOutros); } else if (nServ == 3) { gcSpaSrInqPro = cSerie; doInquilinos(cOutros); } else if (nServ == 4) { gcSpaSrImv = cSerie; doPesqAv(cOutros); } else if (nServ == 5) { gcSpaSrImv = cSerie; doDestaques(cOutros); } else if (nServ == 6) { // O slide é manipulado no servidor } else if (nServ == 7) { gcSpaSrImv = cSerie; doDetalhes(cOutros); } } function criaAjax() { var xmlhttp; try { xmlhttp = new XMLHttpRequest(); } catch (ie1) { try { xmlhttp = new ActiveXObject("Msxml2.XMLHTTP"); } catch (ie2) { try { xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); } catch (e) { xmlhttp = false; } } } return xmlhttp; } function doPesqLat(cParams) { if (cParams == null) { cParams = ""; } // Exibir os detalhes numa div ou num popup // O padrão através dos links é sempre popup cDePup = "&depup=1"; oAjax = criaAjax(); if (oAjax) { // Aqui podemos passar o parâmetro tc caso o cliente use só um dos tipos (Venda ou Locação) cURL = "spa_query.php?tp=2<=1&sr=" + gcSpaSrImv + cDePup; oAjax.open('GET',cURL,false); // false = síncrona oAjax.send(null); if (oAjax.readyState == 4) { if (oAjax.status == 200) { oPesq = document.createElement("div"); oPesq.id = "cnt_pesq"; oPesq.innerHTML = oAjax.responseText; oDiv = document.getElementById("content"); oDiv.appendChild(oPesq); } } } } function doInquilinos(cParams) { if (cParams == null) { cParams = ""; } oAjax = criaAjax(); if (oAjax) { cURL = "spa_query.php?tp=11&sr=" + gcSpaSrInqPro; oAjax.open('GET',cURL,false); // false = síncrona oAjax.send(null); if (oAjax.readyState == 4) { if (oAjax.status == 200) { oDiv = document.getElementById("content"); oDiv.innerHTML = oAjax.responseText; document.getElementById("spa-inq-usuario").focus(); cNav = navigator.userAgent; lMSIE = (cNav.indexOf("MSIE") != -1); if (lMSIE) { document.getElementById("spa-inq-usuario").focus(); } } } } } function doProprietarios(cParams) { if (cParams == null) { cParams = ""; } oAjax = criaAjax(); if (oAjax) { cURL = "spa_query.php?tp=7&sr=" + gcSpaSrInqPro; oAjax.open('GET',cURL,false); // false = síncrona oAjax.send(null); if (oAjax.readyState == 4) { if (oAjax.status == 200) { oDiv = document.getElementById("content"); oDiv.innerHTML = oAjax.responseText; document.getElementById("spa-pro-usuario").focus(); cNav = navigator.userAgent; lMSIE = (cNav.indexOf("MSIE") != -1); if (lMSIE) { document.getElementById("spa-pro-usuario").focus(); } } } } } function doPesqAv(cParams) { if (cParams == null) { cParams = ""; } // Se o quadro das opções avançadas da pesquisa já virá aberto cAtPA = "&atpa=1"; nAtPA = cParams.indexOf("atpa="); if (nAtPA != -1) { cAtPA = "&" + cParams.substr(nAtPA, 6); } // Exibir os detalhes numa div ou num popup // O padrão através dos links é sempre popup cDePup = "&depup=1"; oAjax = criaAjax(); if (oAjax) { // Aqui podemos passar o parâmetro tc caso o cliente use só um dos tipos (Venda ou Locação) cURL = "spa_query.php?tp=2" + cAtPA + "&sr=" + gcSpaSrImv + cDePup; oAjax.open('GET',cURL,false); // false = síncrona oAjax.send(null); if (oAjax.readyState == 4) { if (oAjax.status == 200) { oPesq = document.createElement("div"); oPesq.id = "cnt_pesq"; oPesq.innerHTML = oAjax.responseText; oDiv = document.getElementById("content"); oDiv.appendChild(oPesq); } } } } function doDestaques(cParams) { if (cParams == null) { cParams = ""; } //nMDtq = 0; nQPL = 3; cMold = ""; nLgF = 0; nAtF = 0; nLgD = 0; nAtD = 0; cMgD = ""; nEED = 0; cTipC = ""; cFFnt = ""; cAFnt = ""; nQtDL = 0; nQtDV = 0; cDad = ""; cCTit = ""; cLbVL = ""; cTrD = ""; nEEL = 0; cLbCod = ""; cStl = ""; aParams = cParams.split(","); for (nI = 0; nI < aParams.length; nI++) { /* if (aParams[nI].indexOf("mdtq=") != -1) { // Modelo do destaque nMDtq = parseInt(aParams[nI].substr(aParams[nI].indexOf("=") + 1)); } else */ if (aParams[nI].indexOf("qpl=") != -1) { // Qtde. de destaques por linha nQPL = parseInt(aParams[nI].substr(aParams[nI].indexOf("=") + 1)); } else if (aParams[nI].indexOf("imgm=") != -1) { // Imagem da moldura cMold = aParams[nI].substr(aParams[nI].indexOf("=") + 1); } else if (aParams[nI].indexOf("lgf=") != -1) { // Largura da foto nLgF = parseInt(aParams[nI].substr(aParams[nI].indexOf("=") + 1)); } else if (aParams[nI].indexOf("atf=") != -1) { // Altura da foto nAtF = parseInt(aParams[nI].substr(aParams[nI].indexOf("=") + 1)); } else if (aParams[nI].indexOf("lgd=") != -1) { // Largura do quadro do destaque nLgD = parseInt(aParams[nI].substr(aParams[nI].indexOf("=") + 1)); } else if (aParams[nI].indexOf("atd=") != -1) { // Altura do quadro do destaque nAtD = parseInt(aParams[nI].substr(aParams[nI].indexOf("=") + 1)); } else if (aParams[nI].indexOf("mgd=") != -1) { // Margens do quadro do destaque cMgD = aParams[nI].substr(aParams[nI].indexOf("=") + 1); } else if (aParams[nI].indexOf("eed=") != -1) { // Espaçamento entre destaques nEED = parseInt(aParams[nI].substr(aParams[nI].indexOf("=") + 1)); } else if (aParams[nI].indexOf("tipc=") != -1) { // Tipo de comércio (Venda, Locação ou Ambos) cTipC = aParams[nI].substr(aParams[nI].indexOf("=") + 1).toUpperCase(); } else if (aParams[nI].indexOf("ffnt=") != -1) { // Fontes (CSS font-family) cFFnt = aParams[nI].substr(aParams[nI].indexOf("=") + 1).toLowerCase(); } else if (aParams[nI].indexOf("afnt=") != -1) { // Atributos da fonte (CSS color e font-size) cAFnt = aParams[nI].substr(aParams[nI].indexOf("=") + 1); } else if (aParams[nI].indexOf("qtdl=") != -1) { // Qtde. de destaques de locação nQtDL = parseInt(aParams[nI].substr(aParams[nI].indexOf("=") + 1)); } else if (aParams[nI].indexOf("qtdv=") != -1) { // Qtde. de destaques de venda nQtDV = parseInt(aParams[nI].substr(aParams[nI].indexOf("=") + 1)); } else if (aParams[nI].indexOf("dad=") != -1) { // Dados que serão exibidos e em que ordem cDad = aParams[nI].substr(aParams[nI].indexOf("=") + 1); } else if (aParams[nI].indexOf("ctit=") != -1) { // Composição do título cCTit = aParams[nI].substr(aParams[nI].indexOf("=") + 1); } else if (aParams[nI].indexOf("lbvl=") != -1) { // Label para Valores (Venda/Locação) cLbVL = aParams[nI].substr(aParams[nI].indexOf("=") + 1); } else if (aParams[nI].indexOf("trd=") != -1) { // Trocar destaques a cada carregamento da página cTrD = aParams[nI].substr(aParams[nI].indexOf("=") + 1).toUpperCase(); } else if (aParams[nI].indexOf("eel=") != -1) { // Espaçamento entre linhas nEEL = parseInt(aParams[nI].substr(aParams[nI].indexOf("=") + 1)); } else if (aParams[nI].indexOf("lbcd=") != -1) { // Label para o Código do Imóvel cLbCod = aParams[nI].substr(aParams[nI].indexOf("=") + 1); } else if (aParams[nI].indexOf("stl=") != -1) { // URL do arquivo CSS cStl = aParams[nI].substr(aParams[nI].indexOf("=") + 1).toLowerCase(); } } oAjax = criaAjax(); if (oAjax) { cURL = "spa_query.php?tp=1&sr=" + gcSpaSrImv; oAjax.open('GET',cURL,false); // false = síncrona oAjax.send(null); if (oAjax.readyState == 4) { if (oAjax.status == 200) { oJsonDtq = eval('(' + oAjax.responseText + ')'); } } if (oJsonDtq.destaques.length > 0) { cDtqs = doMontaDestaques(oJsonDtq, nQPL, cMold, nLgF, nAtF, nLgD, nAtD, cMgD, nEED, cTipC, cFFnt, cAFnt, nQtDL, nQtDV, cDad, cCTit, cLbVL, cTrD, nEEL, cLbCod, cStl); oDiv = document.getElementById("content"); oDiv.innerHTML = cDtqs; // Acertar largura e altura dos destaques aTDs = document.getElementsByTagName("td"); cNav = navigator.userAgent; lMSIE_6 = (cNav.indexOf("MSIE 6") != -1); for (nI = 0; nI < aTDs.length; nI++) { if (lMSIE_6) { cClasse = aTDs[nI].attributes["class"].nodeValue; } else { cClasse = aTDs[nI].getAttribute("class"); } if (cClasse == "cdad") { if (nLgD > 0) { aTDs[nI].style.width = aTDs[nI].clientWidth + (nLgD - aTDs[nI].clientWidth) + "px"; } if (nAtD > 0) { aTDs[nI].style.height = aTDs[nI].clientHeight + (nAtD - aTDs[nI].clientHeight) + "px"; } } } } } } function doMontaDestaques(oJson, nQDPL, cMold, nLgF, nAtF, nLgD, nAtD, cMgD, nEED, cTipC, cFFnt, cAFnt, nQtDL, nQtDV, cDad, cCTit, cLbVL, cTrD, nEEL, cLbCod, cStl) { cHTML = ''; nQPL = 0; nLinAt = 1; nMargSup = 0; nMargEsq = 0; nMargDir = 0; if (cMgD. length > 0) { aMgD = cMgD.split("="); nMargSup = aMgD[0]; if (aMgD.length > 1) { nMargEsq = aMgD[1]; } if (aMgD.length > 2) { nMargDir = aMgD[2]; } } cFontes = ""; if (cFFnt.length > 0) { cFontes = cFFnt.replace(/=/g, ","); // Corrigir sans-serif cFontes = cFontes.replace(/sans\,serif/g, "sans-serif"); } cCorFonte = ""; cTamFonte = ""; if (cAFnt.length > 0) { aAFnt = cAFnt.split("="); cCorFonte = aAFnt[0]; if (aAFnt. length > 1) { cTamFonte = aAFnt[1]; } } cDefTit = ''; lTitMaiusc = false; if (cCTit.length > 0) { aCTit = cCTit.split("="); for (nT = 0; nT < aCTit.length; nT++) { if (cDefTit.length > 0 && aCTit[nT] != "5") { cDefTit += " + " + (cDefTit.lastIndexOf(":") == (cDefTit.length - 3) ? "' '" : "' - '") + " + "; } if (aCTit[nT] == "1") { // Título informado no Spaic cDefTit += "oJson.destaques[nI].titulo"; } else if (aCTit[nT] == "2") { // Tipo de imóvel cDefTit += "oJson.destaques[nI].tipo"; } else if (aCTit[nT] == "3") { // Bairro cDefTit += "oJson.destaques[nI].bairro"; } else if (aCTit[nT] == "4") { // Tipo de comércio cDefTit += "(oJson.destaques[nI].tipc == 'L' ? 'Locação:' : 'Venda:')"; } else if (aCTit[nT] == "5") { // Maiúsculas lTitMaiusc = true; } } } cLbV = ""; cLbL = ""; if (cLbVL.length > 0) { aLbVL = cLbVL.split("="); cLbV = aLbVL[0] + (aLbVL[0] != "R$" ? ": " : " "); if (aLbVL.length > 1) { cLbL = aLbVL[1] + (aLbVL[1] != "R$" ? ": " : " "); } } if (cTipC != "V") { nMaxLoc = 0; for (nI = 0; nI < oJson.destaques.length; nI++) { if (oJson.destaques[nI].tipc == "L") { nMaxLoc++; } } if (cTrD == "S") { nQtDL = ((nQtDL < nMaxLoc && nQtDL > 0) ? nQtDL : nMaxLoc); nMaxTam = oJson.destaques.length; cJaFoi = ""; nQtdP = 0; while (nMaxTam > 0 && nMaxLoc > 0 && (nQtDL > 0 ? nQtdP < nQtDL : true) && nQtdP < nMaxTam) { nIndex = Math.floor(Math.random() * nMaxTam); //(nMaxTam - 1)); lAchei = (nIndex < nMaxTam) && (cJaFoi.indexOf("(" + nIndex + ")") == -1) && (oJson.destaques[nIndex].tipc == "L"); if (lAchei) { cJaFoi += "(" + nIndex + ")"; nQtdP ++; } } } nIL = 0; for (nI = 0; nI < oJson.destaques.length; nI++) { if (cTrD == "S") { if (cJaFoi.length > 0) { nI = parseInt(cJaFoi.substring(cJaFoi.indexOf("(") + 1, cJaFoi.indexOf(")"))); cJaFoi = cJaFoi.substr(cJaFoi.indexOf(")") + 1); } else { break; } } if (oJson.destaques[nI].tipc != "L") { continue; } nIL ++; if ((nQtDL > 0 ? nIL > nQtDL : false)) { break; } nQPL ++; if (nQPL > nQDPL) { nLinAt ++; if (cHTML.length > 0) { cHTML += ''; } cHTML += ''; } cHTML += ''; if (nQPL > nQDPL) { nQPL = 1; } if (cTrD == "S") { nI = -1; } } } if (cTipC != "L") { nMaxVen = 0; for (nI = 0; nI < oJson.destaques.length; nI++) { if (oJson.destaques[nI].tipc == "V") { nMaxVen++; } } if (cTrD == "S") { nQtDV = ((nQtDV < nMaxVen && nQtDV > 0) ? nQtDV : nMaxVen); nMaxTam = oJson.destaques.length; cJaFoi = ""; nQtdP = 0; while (nMaxTam > 0 && nMaxVen > 0 && (nQtDV > 0 ? nQtdP < nQtDV : true) && nQtdP < nMaxTam) { nIndex = Math.floor(Math.random() * nMaxTam); //(nMaxTam - 1)); lAchei = (nIndex < nMaxTam) && (cJaFoi.indexOf("(" + nIndex + ")") == -1) && (oJson.destaques[nIndex].tipc == "V"); if (lAchei) { cJaFoi += "(" + nIndex + ")"; nQtdP ++; } } } nIV = 0; for (nI = 0; nI < oJson.destaques.length; nI++) { if (cTrD == "S") { if (cJaFoi.length > 0) { nI = parseInt(cJaFoi.substring(cJaFoi.indexOf("(") + 1, cJaFoi.indexOf(")"))); cJaFoi = cJaFoi.substr(cJaFoi.indexOf(")") + 1); } else { break; } } if (oJson.destaques[nI].tipc != "V") { continue; } nIV ++; if ((nQtDV > 0 ? nIV > nQtDV : false)) { break; } nQPL ++; if (nQPL > nQDPL) { nLinAt ++; if (cHTML.length > 0) { cHTML += ''; } cHTML += ''; } //'style="' + (nLgD > 0 ? 'width: ' + nLgD + 'px; ' : '') + (nAtD > 0 ? 'height: ' + nAtD + 'px; ' : '') + '">' + cHTML += ''; if (nQPL > nQDPL) { nQPL = 1; } if (cTrD == "S") { nI = -1; } } } if (cHTML.length > 0) { cHTML += '
' + '' + ' 0 ? ' width="' + (nLgD - 6) + '"' : '') + (nAtD > 0 ? ' height="' + (nAtD - 6) + '"' : '') + '>' + '' + '' + '' + '' + '' + '' + '' + '' + '' + '' + '' + '' + '' + '' + '' + '
'; if (cDad.length > 0) { aDad = cDad.split("="); lFoiTxt = false; nLTxt = 0; if (nLgD > 0 && (nMargEsq + nMargDir) > 0) { nLTxt = nLgD - (nMargEsq + nMargDir); } for (nD = 0; nD < aDad.length; nD++) { cDadAlign = "center"; nPCAlign = aDad[nD].indexOf("."); if (nPCAlign == 0) { cDadAlign = "left"; aDad[nD] = aDad[nD].substr(1); } else if (nPCAlign > 0) { cDadAlign = "right"; aDad[nD] = aDad[nD].substr(0, nPCAlign); } if (aDad[nD] == "1") { // Título cTit = (cDefTit.length > 0 ? eval(cDefTit) : ''); // Incluido por Fernando - Quebra de Linha if(cTit == "Chácara/Sítio/Fazenda"){ cTit = "Chácara/Sítio/
Fazenda"; } // Fim da Inclusão cHTML += '
' + (cTit.length > 0 ? '' + (lTitMaiusc ? spaCorrigeEntidades(cTit.toUpperCase()) : cTit) + '' : '') + '
'; lFoiTxt = true; } else if (aDad[nD] == "2") { // Foto cHTML += '
' + '' + '
'; } else if (aDad[nD] == "3") { // Descrição cHTML += '
' + oJson.destaques[nI].descr + '
'; lFoiTxt = true; } else if (aDad[nD] == "4") { // Valor cHTML += '
' + (cLbL.length > 0 ? '' + cLbL + '' : '') + oJson.destaques[nI].preco + '
'; lFoiTxt = true; } else if (aDad[nD] == "5") { // Código cHTML += '
' + '' + (cLbCod.length > 0 ? cLbCod : 'Código:') + ' ' + oJson.destaques[nI].codigo + '
'; lFoiTxt = true; } else if (aDad[nD] == "6") { // Vagas if (parseInt(oJson.destaques[nI].vagas) > 0) { cHTML += '
' + oJson.destaques[nI].vagas + (parseInt(oJson.destaques[nI].vagas) > 1 ? ' vagas' : ' vaga') + '
'; lFoiTxt = true; } } else if (aDad[nD] == "7") { // Dormitórios if (parseInt(oJson.destaques[nI].dormit) > 0) { cHTML += '
' + oJson.destaques[nI].dormit + (parseInt(oJson.destaques[nI].dormit) > 1 ? ' dormitórios' : ' dormitório') + '
'; lFoiTxt = true; } } } } cHTML += '
' + '
' + '
' + '' + ' 0 ? ' width="' + (nLgD - 6) + '"' : '') + (nAtD > 0 ? ' height="' + (nAtD - 6) + '"' : '') + '>' + '' + '' + '' + '' + '' + '' + '' + '' + '' + '' + '' + '' + '' + '' + '' + '
'; if (cDad.length > 0) { aDad = cDad.split("="); lFoiTxt = false; nLTxt = 0; if (nLgD > 0 && (nMargEsq + nMargDir) > 0) { nLTxt = nLgD - (nMargEsq + nMargDir); } for (nD = 0; nD < aDad.length; nD++) { cDadAlign = "center"; nPCAlign = aDad[nD].indexOf("."); if (nPCAlign == 0) { cDadAlign = "left"; aDad[nD] = aDad[nD].substr(1); } else if (nPCAlign > 0) { cDadAlign = "right"; aDad[nD] = aDad[nD].substr(0, nPCAlign); } if (aDad[nD] == "1") { // Título cTit = (cDefTit.length > 0 ? eval(cDefTit) : ''); // Incluido por Fernando - Quebra de Linha if(cTit == "Chácara/Sítio/Fazenda"){ cTit = "Chácara/Sítio/
Fazenda"; } // Fim da Inclusão cHTML += '
' + (cDefTit.length > 0 ? '' + (lTitMaiusc ? spaCorrigeEntidades(cTit.toUpperCase()) : cTit) + '' : '') + '
'; lFoiTxt = true; } else if (aDad[nD] == "2") { // Foto cHTML += '
' + '' + '
'; } else if (aDad[nD] == "3") { // Descrição cHTML += '
' + oJson.destaques[nI].descr + '
'; lFoiTxt = true; } else if (aDad[nD] == "4") { // Valor cHTML += '
' + (cLbV.length > 0 ? '' + cLbV + '' : '') + oJson.destaques[nI].preco + '
'; lFoiTxt = true; } else if (aDad[nD] == "5") { // Código cHTML += '
' + '' + (cLbCod.length > 0 ? cLbCod : 'Código:') + ' ' + oJson.destaques[nI].codigo + '
'; lFoiTxt = true; } else if (aDad[nD] == "6") { // Vagas if (parseInt(oJson.destaques[nI].vagas) > 0) { cHTML += '
' + oJson.destaques[nI].vagas + (parseInt(oJson.destaques[nI].vagas) > 1 ? ' vagas' : ' vaga') + '
'; lFoiTxt = true; } } else if (aDad[nD] == "7") { // Dormitórios if (parseInt(oJson.destaques[nI].dormit) > 0) { cHTML += '
' + oJson.destaques[nI].dormit + (parseInt(oJson.destaques[nI].dormit) > 1 ? ' dormitórios' : ' dormitório') + '
'; lFoiTxt = true; } } } } cHTML += '
' + '
' + '
'; } return cHTML; } function doDetalhes(cParams) { if (cParams == null) { cParams = ""; } nID = 0; cTipC = ""; cStl = ""; aParams = cParams.split(","); for (nI = 0; nI < aParams.length; nI++) { if (aParams[nI].indexOf("id=") != -1) { // Código do Imóvel nID = parseInt(aParams[nI].substr(aParams[nI].indexOf("=") + 1)); } else if (aParams[nI].indexOf("tipc=") != -1) { // Tipo de comércio (Venda ou Locação) cTipC = aParams[nI].substr(aParams[nI].indexOf("=") + 1).toUpperCase(); } else if (aParams[nI].indexOf("stl=") != -1) { // URL do arquivo CSS cStl = aParams[nI].substr(aParams[nI].indexOf("=") + 1).toLowerCase(); } } spaImvExibeDetalhe(nID, null, cTipC, gcSpaSrImv, true, cStl); }