/// 2.8.24

function LockMouseClickRight() {
    if (document.layers) {
        document.captureEvents(Event.MOUSEDOWN);
        document.onmousedown = clickNS;
    }
    else {
        document.onmouseup = clickNS;
        document.oncontextmenu = clickIE;
    }
}

function GetObjXML() {
    //alert('x');
    try {
        //if (window.XMLHttpRequest)
        //    objXML = new XMLHttpRequest();
        //else // Internet Explorer
        //objXML = new ActiveXObject("Microsoft.XMLHTTP");
        objXML = new ActiveXObject("Msxml2.DOMDocument");
        //objXML = new ActiveXObject("Microsoft.XMLDOM");
        //objXML = new ActiveXObject("Msxml2.DOMDocument.4.0");
    }
    catch (e) {
        //objXML = new XMLHttpRequest();
        //alert(e);
    }
    //alert('ok');
    return objXML;
}

function noerro() {
    //alert("ERRO");
}

try {
    onerror = noerro;
    //window.status = "Produto Certo: Gerador de Sites, e-Commerce, Mailing";
}
catch (e) {
    // alert(e + ": onerror");
}

var PC2_Messagem = "Produto Certo 2011";

function clickIE() {
    if (document.all) {
        alert(PC2_Messagem);
        return false;
    }
}

function clickNS(e) {
    if (document.layers || (document.getElementById && !document.all)) {
        if (e.which == 2 || e.which == 3) {
            alert(PC2_Messagem);
            return false;
        }
    }
}

var nLoopContador = 0;
function OfertaRelampago(cID, nAno, nMes, nDia, nHora, nMin, nSeg) {
    var dvo = document.getElementById(cID);
    if (dvo == null)
        return;
    var dt = new Date(nAno, nMes - 1, nDia, nHora, nMin, nSeg, 0);
    var hoje = new Date();
    var t = dt - hoje;
    var segundos = parseInt(t / 1000);
    if (segundos > 2) {
        var dias = parseInt(segundos / (24 * 3600));
        segundos -= dias * 24 * 3600;
        var horas = parseInt(segundos / 3600);
        segundos -= horas * 3600;
        var minutos = parseInt(segundos / 60);
        segundos -= minutos * 60;

        if (segundos < 10)
            segundos = "0" + segundos;
        if (minutos < 10)
            minutos = "0" + minutos;

        if (dias > 0)
            dvo.innerHTML = "<strong>" + dias + "</strong><b> dias </b><strong>" + horas + "</strong><b>:</b><strong>" + minutos + "</strong><b>:</b><strong>" + segundos + "</strong>";
        else if (horas > 0)
            dvo.innerHTML = "<strong>&nbsp;</strong><b></b><strong>" + horas + "</strong><b>:</b><strong>" + minutos + "</strong><b>:</b><strong>" + segundos + "</strong>";
        else
            dvo.innerHTML = "<strong>&nbsp;</strong><b></b><strong>0</strong><b></b><strong>" + minutos + "</strong><b>:</b><strong>" + segundos + "</strong>";

        nLoopContador++;
        if (nLoopContador > 1000) {
            nLoopContador = 0;
            window.location = window.location;
        }
    }
    else if (segundos > 0)
        nLoopContador = 1000;
    else {
        dvo.innerHTML = "esgotado";
    }
}

/**
* SWFObject v1.5: Flash Player detection and embed - http://blog.deconcept.com/swfobject/
*
* SWFObject is (c) 2007 Geoff Stearns and is released under the MIT License:
* http://www.opensource.org/licenses/mit-license.php
*
*/

function SetHTML(iResults, context) {
    document.getElementById("P4_cphConteudo_dvOut").innerHTML = iResults;
}

var lasthtmlLoad = null;
var listhtml = new Array();

function SetAsyncHtml(iResults, context) {
    //alert("SetAsyncHtml");
    var n = iResults.indexOf(" ");
    var id = iResults.substring(0, n);
    var html = iResults.substring(n + 1);
    document.getElementById(id).innerHTML = html;

    var newload = new htmlLoad(lasthtmlLoad, html)
    listhtml.push(newload);
    lasthtmlLoad = null;
}

function htmlLoad(cID, cHTML) {
    this.id = cID;
    this.HTML = cHTML;
    return this;
}

function DefAsyncLoad(id, obj, prm) {
    if (lasthtmlLoad != null) {
        alert("Aguarde...");
        //lasthtmlLoad = null;
        return;
    }
    var i;
    lasthtmlLoad = id + obj + prm;
    for (i = 0; i < listhtml.length; i++) {
        if (listhtml[i].id == lasthtmlLoad) {
            document.getElementById(id).innerHTML = listhtml[i].HTML;
            lasthtmlLoad = null;
            return;
        }
    }
    PC.wsAjax.GetAsyncHtml(id, obj, prm, SetAsyncHtml, showError);
    return false;
}

function updateDateKey(value) {
    var behavior = $find('P4_cphConteudo_dp');
    //alert(behavior);
    if (behavior) {
        behavior.populate(value);
    }
    return false;
}

if (typeof deconcept == "undefined") { var deconcept = new Object(); } if (typeof deconcept.util == "undefined") { deconcept.util = new Object(); } if (typeof deconcept.SWFObjectUtil == "undefined") { deconcept.SWFObjectUtil = new Object(); } deconcept.SWFObject = function(_1, id, w, h, _5, c, _7, _8, _9, _a) { if (!document.getElementById) { return; } this.DETECT_KEY = _a ? _a : "detectflash"; this.skipDetect = deconcept.util.getRequestParameter(this.DETECT_KEY); this.params = new Object(); this.variables = new Object(); this.attributes = new Array(); if (_1) { this.setAttribute("swf", _1); } if (id) { this.setAttribute("id", id); } if (w) { this.setAttribute("width", w); } if (h) { this.setAttribute("height", h); } if (_5) { this.setAttribute("version", new deconcept.PlayerVersion(_5.toString().split("."))); } this.installedVer = deconcept.SWFObjectUtil.getPlayerVersion(); if (!window.opera && document.all && this.installedVer.major > 7) { deconcept.SWFObject.doPrepUnload = true; } if (c) { this.addParam("bgcolor", c); } var q = _7 ? _7 : "high"; this.addParam("quality", q); this.setAttribute("useExpressInstall", false); this.setAttribute("doExpressInstall", false); var _c = (_8) ? _8 : window.location; this.setAttribute("xiRedirectUrl", _c); this.setAttribute("redirectUrl", ""); if (_9) { this.setAttribute("redirectUrl", _9); } }; deconcept.SWFObject.prototype = { useExpressInstall: function(_d) { this.xiSWFPath = !_d ? "expressinstall.swf" : _d; this.setAttribute("useExpressInstall", true); }, setAttribute: function(_e, _f) { this.attributes[_e] = _f; }, getAttribute: function(_10) { return this.attributes[_10]; }, addParam: function(_11, _12) { this.params[_11] = _12; }, getParams: function() { return this.params; }, addVariable: function(_13, _14) { this.variables[_13] = _14; }, getVariable: function(_15) { return this.variables[_15]; }, getVariables: function() { return this.variables; }, getVariablePairs: function() { var _16 = new Array(); var key; var _18 = this.getVariables(); for (key in _18) { _16[_16.length] = key + "=" + _18[key]; } return _16; }, getSWFHTML: function() { var _19 = ""; if (navigator.plugins && navigator.mimeTypes && navigator.mimeTypes.length) { if (this.getAttribute("doExpressInstall")) { this.addVariable("MMplayerType", "PlugIn"); this.setAttribute("swf", this.xiSWFPath); } _19 = "<embed type=\"application/x-shockwave-flash\" src=\"" + this.getAttribute("swf") + "\" width=\"" + this.getAttribute("width") + "\" height=\"" + this.getAttribute("height") + "\" style=\"" + this.getAttribute("style") + "\""; _19 += " id=\"" + this.getAttribute("id") + "\" name=\"" + this.getAttribute("id") + "\" "; var _1a = this.getParams(); for (var key in _1a) { _19 += [key] + "=\"" + _1a[key] + "\" "; } var _1c = this.getVariablePairs().join("&"); if (_1c.length > 0) { _19 += "flashvars=\"" + _1c + "\""; } _19 += "/>"; } else { if (this.getAttribute("doExpressInstall")) { this.addVariable("MMplayerType", "ActiveX"); this.setAttribute("swf", this.xiSWFPath); } _19 = "<object id=\"" + this.getAttribute("id") + "\" classid=\"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000\" width=\"" + this.getAttribute("width") + "\" height=\"" + this.getAttribute("height") + "\" style=\"" + this.getAttribute("style") + "\">"; _19 += "<param name=\"movie\" value=\"" + this.getAttribute("swf") + "\" />"; var _1d = this.getParams(); for (var key in _1d) { _19 += "<param name=\"" + key + "\" value=\"" + _1d[key] + "\" />"; } var _1f = this.getVariablePairs().join("&"); if (_1f.length > 0) { _19 += "<param name=\"flashvars\" value=\"" + _1f + "\" />"; } _19 += "</object>"; } return _19; }, write: function(_20) { if (this.getAttribute("useExpressInstall")) { var _21 = new deconcept.PlayerVersion([6, 0, 65]); if (this.installedVer.versionIsValid(_21) && !this.installedVer.versionIsValid(this.getAttribute("version"))) { this.setAttribute("doExpressInstall", true); this.addVariable("MMredirectURL", escape(this.getAttribute("xiRedirectUrl"))); document.title = document.title.slice(0, 47) + " - Flash Player Installation"; this.addVariable("MMdoctitle", document.title); } } if (this.skipDetect || this.getAttribute("doExpressInstall") || this.installedVer.versionIsValid(this.getAttribute("version"))) { var n = (typeof _20 == "string") ? document.getElementById(_20) : _20; n.innerHTML = this.getSWFHTML(); return true; } else { if (this.getAttribute("redirectUrl") != "") { document.location.replace(this.getAttribute("redirectUrl")); } } return false; } }; deconcept.SWFObjectUtil.getPlayerVersion = function() { var _23 = new deconcept.PlayerVersion([0, 0, 0]); if (navigator.plugins && navigator.mimeTypes.length) { var x = navigator.plugins["Shockwave Flash"]; if (x && x.description) { _23 = new deconcept.PlayerVersion(x.description.replace(/([a-zA-Z]|\s)+/, "").replace(/(\s+r|\s+b[0-9]+)/, ".").split(".")); } } else { if (navigator.userAgent && navigator.userAgent.indexOf("Windows CE") >= 0) { var axo = 1; var _26 = 3; while (axo) { try { _26++; axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash." + _26); _23 = new deconcept.PlayerVersion([_26, 0, 0]); } catch (e) { axo = null; } } } else { try { var axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.7"); } catch (e) { try { var axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.6"); _23 = new deconcept.PlayerVersion([6, 0, 21]); axo.AllowScriptAccess = "always"; } catch (e) { if (_23.major == 6) { return _23; } } try { axo = new ActiveXObject("ShockwaveFlash.ShockwaveFlash"); } catch (e) { } } if (axo != null) { _23 = new deconcept.PlayerVersion(axo.GetVariable("$version").split(" ")[1].split(",")); } } } return _23; }; deconcept.PlayerVersion = function(_29) { this.major = _29[0] != null ? parseInt(_29[0]) : 0; this.minor = _29[1] != null ? parseInt(_29[1]) : 0; this.rev = _29[2] != null ? parseInt(_29[2]) : 0; }; deconcept.PlayerVersion.prototype.versionIsValid = function(fv) { if (this.major < fv.major) { return false; } if (this.major > fv.major) { return true; } if (this.minor < fv.minor) { return false; } if (this.minor > fv.minor) { return true; } if (this.rev < fv.rev) { return false; } return true; }; deconcept.util = { getRequestParameter: function(_2b) { var q = document.location.search || document.location.hash; if (_2b == null) { return q; } if (q) { var _2d = q.substring(1).split("&"); for (var i = 0; i < _2d.length; i++) { if (_2d[i].substring(0, _2d[i].indexOf("=")) == _2b) { return _2d[i].substring((_2d[i].indexOf("=") + 1)); } } } return ""; } }; deconcept.SWFObjectUtil.cleanupSWFs = function() { var _2f = document.getElementsByTagName("OBJECT"); for (var i = _2f.length - 1; i >= 0; i--) { _2f[i].style.display = "none"; for (var x in _2f[i]) { if (typeof _2f[i][x] == "function") { _2f[i][x] = function() { }; } } } }; if (deconcept.SWFObject.doPrepUnload) { if (!deconcept.unloadSet) { deconcept.SWFObjectUtil.prepUnload = function() { __flash_unloadHandler = function() { }; __flash_savedUnloadHandler = function() { }; window.attachEvent("onunload", deconcept.SWFObjectUtil.cleanupSWFs); }; window.attachEvent("onbeforeunload", deconcept.SWFObjectUtil.prepUnload); deconcept.unloadSet = true; } } if (!document.getElementById && document.all) { document.getElementById = function(id) { return document.all[id]; }; } var getQueryParamValue = deconcept.util.getRequestParameter; var FlashObject = deconcept.SWFObject; var SWFObject = deconcept.SWFObject;

// retorna numeros aleatórios
function rand(n) {
    return (Math.floor(Math.random() * n + 1));
}

// usado e FAQ e Seleção de unidade do produto

var lastHideShow = null;
function HideShow(cID) {
    var dv;
    if (lastHideShow != null) {
        dv = document.getElementById(lastHideShow);
        dv.style.display = "none";
    }
    dv = document.getElementById(cID);
    if (dv != null) {
        if (dv.style.display == "none")
            dv.style.display = "block";
        else
            dv.style.display = "none";
        lastHideShow = cID;
    }
}
function HideShowSet(cID) {
    dv = document.getElementById(cID);
    dv.style.display = "block";
    lastHideShow = cID;
}

function adsShow(cPref, cIDs, nPos) {
    var c = cPref + "_" + cIDs[nPos];
    var a = document.getElementById(c);
    a.style.display = "none";
    nPos++;
    if (nPos >= cIDs.length)
        nPos = 0;
    c = cPref + "_" + cIDs[nPos];
    a = document.getElementById(c);
    a.style.display = "block";
    setTimeout(function () { adsShow(cPref, cIDs, nPos) }, 5000);
}

var htmlOriginalZoom = null;
function ShowProdFoto(cImgID, cLoja, cImg, cSize, nID) {
    var img = document.getElementById(cImgID);
    if (img != null) {
        //alert(img.src + "\r\n" + img.parentNode.href);
        if (img.parentNode.nodeName == "A" && img.parentNode.id == "Zoom") // Ajax: cloud-zoom!
        {
            if (htmlOriginalZoom == null) {
                htmlOriginalZoom = img.parentNode.parentNode.innerHTML; //.replace("class=\"Zoom\"", "class=\"cloud-zoom\"");
                //alert(htmlOriginalZoom);
                var imgOld = img.src;
                var i = imgOld.indexOf(".jpg-") + 4;
                var x1 = imgOld.substr(0, i);
                i = x1.lastIndexOf("/");
                x1 = x1.substr(i + 1);
                htmlOriginalZoom = htmlOriginalZoom.replace(x1, "[MyImage]").replace(x1, "[MyImage]");
                //alert(htmlOriginalZoom);
            }
            var tmp = htmlOriginalZoom.replace("[MyImage]", cImg).replace("[MyImage]", cImg);
            //alert(tmp);
            setTimeout(function () {
                img.parentNode.parentNode.innerHTML = tmp;
                $('.cloud-zoom').CloudZoom();
            }, 400);
        }
        else
            img.src = "Produto/" + cImg + "-ProdFoto-" + cSize + "_tumb.axd";
    }

    //foto ampliada
    var href = document.getElementById('FotoAmpliada');
    if (href != null)
        href.href = "Produto/" + cImg + "-600x800_tumb.axd";

    if (nID > 0) {
        var ddl = document.getElementById("add");
        if (ddl != null) {
            for (i = 0; i < ddl.options.length; i++) {
                c = ddl.options[i].value; // ID-Foto
                c = c.substr(0, c.indexOf("-"));
                if (c == nID) {
                    ddl.selectedIndex = i;
                    HideShow("ProdUnid_" + c);
                    break;
                }
            }
        }
    }
}

function LinkZoom(cImgID, cSize) {
    var img = document.getElementById(cImgID);
    if (img != null) {
        var cimg = img.src;
        var n = cimg.lastIndexOf("-") + 1;
        cimg=cimg.substr(0, n) + cSize + "_tumb.axd";
        window.open(cimg, "ZOOM", "", true);
    }
}


function ShowProdCorMat(cImgID, cLoja, cCorID, cSize) {
    var img = document.getElementById(cImgID);
    if (img != null)
        img.src = "Produto/" + cCorID + "-ProdMatCor-" + cSize + "_tumb.axd"; //z=1
}

function SelectProdMatCor(opc, cImgID, cLoja, cSize) {
    var ddl = document.getElementById("add");
    var i, n, c;
    if (opc == 0) {
        for (i = 0; i < ddl.options.length; i++) {
            c = ddl.options[i].value;
            n = c.indexOf("-");
            c = c.substr(0, n);
            HideShow("ProdUnid_" + c);
        }
    }
    c = ddl.value;
    n = c.indexOf("-");
    var nImg = parseInt(c.substr(n + 1));
    c = c.substr(0, n);
    HideShow("ProdUnid_" + c);
    if (nImg > 0)
        ShowProdFoto(cImgID, cLoja, "Foto"+nImg+".jpg", cSize, 0);
}

var ColorLinkOnOff = null;
var oldOnOff = null;
//alexandre - 26/09
function LinkOnOff(cID,cor) {
    if (ColorLinkOnOff != null) {
        var ahr = document.getElementById(cID);
        if (oldOnOff != null)
            document.getElementById(oldOnOff).style.color = "";
        if (cor != "")
            ahr.style.color = cor;
        else
            ahr.style.color = "red"; //.style.backgroundColor = "red";
        oldOnOff = cID;
    }
}

//v1.0
//Copyright 2006 Adobe Systems, Inc. All rights reserved.
function AC_AddExtension(src, ext) {
    if (src.indexOf('?') != -1)
        return src.replace(/\?/, ext + '?');
    else
        return src + ext;
}

function AC_Generateobj(objAttrs, params, embedAttrs) {
    var str = '<object ';
    for (var i in objAttrs)
        if (i != "name")
        str += i + '="' + objAttrs[i] + '" ';
    str += '>';
    for (var i in params)
        str += '<param name="' + i + '" value="' + params[i] + '" /> ';
    str += '<embed ';
    for (var i in embedAttrs)
        if (i != "id")
        str += i + '="' + embedAttrs[i] + '" ';
    str += ' ></embed></object>';
    document.write(str);
}

function AC_FL_RunContent() {
    var ret =
AC_GetArgs
(arguments, ".swf", "movie", "clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"
, "application/x-shockwave-flash"
);
    AC_Generateobj(ret.objAttrs, ret.params, ret.embedAttrs);
}

function AC_SW_RunContent() {
    var ret =
AC_GetArgs
(arguments, ".dcr", "src", "clsid:166B1BCA-3F9C-11CF-8075-444553540000"
, null
);
    AC_Generateobj(ret.objAttrs, ret.params, ret.embedAttrs);
}


function AC_GetArgs(args, ext, srcParamName, classid, mimeType) {
    var ret = new Object();
    ret.embedAttrs = new Object();
    ret.params = new Object();
    ret.objAttrs = new Object();
    for (var i = 0; i < args.length; i = i + 2) {
        var currArg = args[i].toLowerCase();

        switch (currArg) {
            case "classid":
                break;
            case "pluginspage":
                ret.embedAttrs[args[i]] = args[i + 1];
                break;
            case "src":
            case "movie":
                args[i + 1] = AC_AddExtension(args[i + 1], ext);
                ret.embedAttrs["src"] = args[i + 1];
                ret.params[srcParamName] = args[i + 1];
                break;
            case "onafterupdate":
            case "onbeforeupdate":
            case "onblur":
            case "oncellchange":
            case "onclick":
            case "ondblClick":
            case "ondrag":
            case "ondragend":
            case "ondragenter":
            case "ondragleave":
            case "ondragover":
            case "ondrop":
            case "onfinish":
            case "onfocus":
            case "onhelp":
            case "onmousedown":
            case "onmouseup":
            case "onmouseover":
            case "onmousemove":
            case "onmouseout":
            case "onkeypress":
            case "onkeydown":
            case "onkeyup":
            case "onload":
            case "onlosecapture":
            case "onpropertychange":
            case "onreadystatechange":
            case "onrowsdelete":
            case "onrowenter":
            case "onrowexit":
            case "onrowsinserted":
            case "onstart":
            case "onscroll":
            case "onbeforeeditfocus":
            case "onactivate":
            case "onbeforedeactivate":
            case "ondeactivate":
            case "type":
            case "codebase":
                ret.objAttrs[args[i]] = args[i + 1];
                break;
            case "width":
            case "height":
            case "align":
            case "vspace":
            case "hspace":
            case "class":
            case "title":
            case "accesskey":
            case "name":
            case "id":
            case "tabindex":
                ret.embedAttrs[args[i]] = ret.objAttrs[args[i]] = args[i + 1];
                break;
            default:
                ret.embedAttrs[args[i]] = ret.params[args[i]] = args[i + 1];
        }
    }
    ret.objAttrs["classid"] = classid;
    if (mimeType) ret.embedAttrs["type"] = mimeType;
    return ret;
}

// IMPACTRO: Produto Certo 2
function swfBanner(cFile, nWidth, nHeight) {
    AC_FL_RunContent('codebase', 'https://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0',
     'width', nWidth,
     'height', nHeight,
     'src', cFile,
     'quality', 'high',
     'pluginspage', 'http://www.macromedia.com/go/getflashplayer',
     'movie', cFile,
     'wmode', 'Transparent');
}

function swfVideo(cVideo, nWidth, nHeight) {
    AC_FL_RunContent('codebase', 'https://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0',
     'width', nWidth,
     'height', nHeight,
     'src', "FlashVideo",
     'quality', 'high',
     'pluginspage', 'https://www.macromedia.com/go/getflashplayer',
     'movie', "FlashVideo",
     'wmode', 'Transparent',
     "flashvars", "video=" + cVideo + ".flv");
}

function swfSimpleViewer(nWidth, nHeight, cPagina) {
    AC_FL_RunContent('codebase', 'https://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0',
     'width', nWidth,
     'height', nHeight,
     'src', "simpleviewer",
     'quality', 'high',
     'allowfullscreen', 'true',
     'allowscriptaccess', 'always"',
     'pluginspage', 'https://www.macromedia.com/go/getflashplayer',
     'movie', "simpleviewer",
     'wmode', 'Transparent',
     "flashvars", "galleryURL=simpleviewer.ashx?origem=" + cPagina + rand(1000));
}
function FormatBR(nTotal) {
    var cTotal = "" + nTotal;
    cTotal = cTotal.replace(".", ",");
    var n = cTotal.lastIndexOf(",");
    if (n > 0) {
        cTotal = cTotal + "0";
        cTotal = cTotal.substring(0, n + 3);
    }
    else
        cTotal = nTotal + ",00";

    if (cTotal.length > 6)
        cTotal = cTotal.substr(0, cTotal.length - 6) + "." + cTotal.substr(cTotal.length - 6);

    if (cTotal.length > 10)
        cTotal = cTotal.substr(0, cTotal.length - 10) + "." + cTotal.substr(cTotal.length - 10);

    return cTotal;
}

function SemImagem(img, size) {
    img.src = "imagens/SemImagem0.jpg"
    img.width = size;
}

// http://www.permadi.com/tutorial/flashjscommand/
function getFlashMovieObject(movieName) {
    if (window.document[movieName]) {
        return window.document[movieName];
    }
    if (navigator.appName.indexOf("Microsoft Internet") == -1) {
        if (document.embeds && document.embeds[movieName])
            return document.embeds[movieName];
    }
    else // if (navigator.appName.indexOf("Microsoft Internet")!=-1)
    {
        return document.getElementById(movieName);
    }
}

function showError(error, context) {
    alert(
        "Error: " + error.get_message() + "\n" +
        "Stack Trace: " + error.get_stackTrace() + "\n" +
        "Status Code: " + error.get_statusCode() + "\n" +
        "Type: " + error.get_exceptionType());
}

function BannerReg(nID) {
    try {
        window.status = "Registrando Visita do Banner " + nID;
        var url = window.location.href;
        var wsXML = GetObjXML();  // new ActiveXObject("Msxml2.DOMDocument");
        var n = url.lastIndexOf("/");
        wsXML.async = false;
        url = url.substr(0, n) + "/wsAjax.asmx/BannerVisita?nID=" + nID;
        wsXML.load(url);
    }
    catch (e) {
    }
    return true;
}

// AjaxToolKit!
// Move an element directly on top of another element 
// (and optionally make it the same size)
function Cover(bottom, top, ignoreSize) {
    var location = Sys.UI.DomElement.getLocation(bottom);
    top.style.position = 'absolute';
    top.style.top = location.y + 'px';
    top.style.left = location.x + 'px';
    if (!ignoreSize) {
        top.style.height = bottom.offsetHeight + 'px';
        top.style.width = bottom.offsetWidth + 'px';
    }
}


/*** AJAX SCRIPTS: IMPACTRO WebControls Framework 
     Customização Produto Certo
     Fábio Ferreira de Souza - 22/04/2010 - fabio@impactro.com ***/

// Obetem a WebService
var AJAXImpactroServices = "wsUtil.asmx";

function AJAXGetWsUtil() {
    //var urlBase = new String();
    //var n;
    //urlBase = window.location.href;
    // 'http://
    //n = urlBase.indexOf("/", 7);
    // alert(urlBase.substr(0,n) + AJAXImpactroServices);
    //return urlBase.substr(0, n) + AJAXImpactroServices;
    //alert(AJAXImpactroServices);
    return AJAXImpactroServices;
}

// val é o objeto
// var args = { Value:value, IsValid:true }; 
// onde value é o valor do objeto e IsValid é a propriedade a ser retornada
var AJAXCardTypes = "";
function AJAXValidatorCard(val, args) {
    //alert(1);
    var er = new RegExp("(\\d{15,16})|(\\d{4}-\\d{4}-\\d{4}-\\d{3,4})");
    if (args.Value.match(er) == null) {
        args.IsValid = false;
        return;
    }

    var CardType = "";
    //alert(2);
    try {
        var n = 0;
        do {
            if (document.getElementById(AJAXCardTypes)) // document.forms[0].item(AJAXCardTypes,n).checked )
            {
                CardType = document.getElementById(AJAXCardTypes); //document.forms[0].item(AJAXCardTypes,n).value;
                break;
            }
            n++;
        } while (n < 3) //no maximo 3 tipos de cartão, ou erro se menos.
    }
    catch (e) {
    }
    //alert(3);
    xml = GetObjXML(); // new ActiveXObject("Msxml2.DOMDocument");
    xml.async = false;
    xml.load(AJAXGetWsUtil() + "/AJAXCardValid?cCard=" + CardType + "&cNumber=" + args.Value);
    args.IsValid = xml.selectSingleNode("string").text == "OK";
    //alert(4);
}

// Cria uma classe para leitura de DropDownList
function AJAXLoadDropDownList(nArray, cControl, cType, cMethod, cParmeter, cSelectedValue, lStartLoad) {
    //alert(cControl);
    this.Control = document.getElementById(cControl);
    this.Type = cType;
    this.Method = cMethod;
    this.Parmeter = cParmeter;
    this.SelectedValue = cSelectedValue;
    this.ArrayItem = nArray;
    if (lStartLoad) {
        var opt = document.createElement("OPTION");
        opt.text = "Carregando...";
        this.Control.disabled = true;
        this.Control.options.add(opt);
        this.Control.selectedIndex = 0;
        this.Load = 0;
        this.XML = GetObjXML(); // new ActiveXObject("Msxml2.DOMDocument");
        this.XML.async = true;
        this.XML.ondataavailable = new Function("AJAXLoadingDropDownList(AJAXDropDownLoadAsync[" + nArray + "]);");
        this.XML.onreadystatechange = new Function("AJAXLoadReadyDropDownList(AJAXDropDownLoadAsync[" + nArray + "]);");
        this.XML.load(AJAXGetWsUtil() + "/AJAXLoadListItens?cType=" + cType + "&cMethod=" + cMethod + "&cParmeter=" + cParmeter);
    }
    return this;
}

// Carrega de forma ssincrona os dados da DropDownList
function AJAXLoadingDropDownList(objDDL) {
    var n, i;
    var item;
    var opt;
    var lOnchange = false;

    if (objDDL.XML.documentElement == null) {
        objDDL.Control.options[0].text = "Vazio";
        return;
    }
    for (n = objDDL.Load; n < objDDL.XML.documentElement.childNodes.length; n++) {
        item = objDDL.XML.documentElement.childNodes[n].text;
        opt = document.createElement("OPTION");
        i = item.indexOf("|");
        if (i > 0) {
            opt.value = item.substring(0, i);
            opt.text = item.substring(i + 1);
        }
        else {
            opt.value = item;
            opt.text = item;
        }

        if (opt.value == objDDL.SelectedValue) {
            lOnchange = true;
            opt.selected = true;
        }

        objDDL.Control.options.add(opt);

    }

    if (objDDL.Load == 0) {
        objDDL.Control.disabled = false;
        objDDL.Control.options.remove(0);
    }

    if (lOnchange) {
        if (objDDL.Control.onchange != null)
            objDDL.Control.onchange();
    }

    objDDL.Load = n;
    //lblInfo.innerHTML+=n+",";

}

function AJAXLoadReadyDropDownList(objDDL) {
    if (objDDL != null && objDDL.Control != null && objDDL.XML != null) {
        //lblInfo.innerHTML+= "<br>" + objDDL.Control.id + ": readyState=" + objDDL.XML.readyState + "<br>";
        //objDDL.XML.readyState==4
        //OK
    }
}

// Carrega uma dropdown List quando uma outra é alterada
function AJAXOnChangeDropDownList(obj, cTargetControl) {
    var n;
    var objTarget = null;
    //alert("cTargetControl: " + cTargetControl);
    for (n = 0; n < AJAXDropDownLoadAsync.length; n++) {
        //alert("AJAXDropDownLoadAsync[n]: " + AJAXDropDownLoadAsync[n].Control);
        if (AJAXDropDownLoadAsync[n].Control.id == cTargetControl) {
            objTarget = AJAXDropDownLoadAsync[n];
            break;
        }
    }
    if (objTarget == null) {
        alert("AJAX Error, Objeto " + cTargetControl + " não está no array de elementos!");
        return;
    }

    var cPRM = objTarget.Parmeter + "|" + obj.value;
    var opt = document.createElement("OPTION");
    opt.text = "Carregando...";
    objTarget.Control.disabled = true;
    objTarget.Control.options.add(opt);
    objTarget.Control.selectedIndex = objTarget.Control.options.length - 1;

    while (objTarget.Control.options.length > 1)
        objTarget.Control.options.remove(0);

    objTarget.Load = 0;
    objTarget.XML = GetObjXML(); // new ActiveXObject("Msxml2.DOMDocument");
    objTarget.XML.async = true;
    objTarget.XML.ondataavailable = new Function("AJAXLoadingDropDownList(AJAXDropDownLoadAsync[" + objTarget.ArrayItem + "]);");
    objTarget.XML.onreadystatechange = new Function("AJAXLoadReadyDropDownList(AJAXDropDownLoadAsync[" + objTarget.ArrayItem + "]);");
    objTarget.XML.load(AJAXGetWsUtil() + "/AJAXLoadListItens?cType=" + objTarget.Type + "&cMethod=" + objTarget.Method + "&cParmeter=" + cPRM);
}


var AJAXLoadDropDownListArrayOK = false;
function AJAXLoadDropDownListArray() {
    try // Para não dar erro quando o arrai de dropdown estiver zerado.
    {
        if (AJAXLoadDropDownListArrayOK)
            return;

        //alert("load:" + AJAXLoadDropDownListArrayOK);
        
        AJAXLoadDropDownListArrayOK = true;
        var n = 0;
        for (n = 0; n < AJAXDropDownLoadAsync.length; n++) {
            AJAXDropDownLoadAsync[n] = new AJAXLoadDropDownList(n,
                AJAXDropDownLoadAsync[n][0],
                AJAXDropDownLoadAsync[n][1],
                AJAXDropDownLoadAsync[n][2],
                AJAXDropDownLoadAsync[n][3],
                AJAXDropDownLoadAsync[n][4],
                AJAXDropDownLoadAsync[n][5]);
        }

        if (AJAXDocumentLoad != null)
            AJAXDocumentLoad();

    }
    catch (c) {
        return;
    }
}

var AJAXCep = new Array();
var AJAXEndereco = new Array();
var AJAXNumero = new Array();
var AJAXBairro = new Array();
var AJAXCidade = new Array();
var AJAXEstado = new Array();
var AJAXUFTipo = new Array();
var xmlCep = null; ;

function AJAXLoadEndereco(nItem) {
    //alert("AJAXLoadEndereco");
    cResult = xmlCep.selectSingleNode("CepEndereco/Result").text
    if (cResult == "OK") {
        try {

            var cUF, n;

            // Lé os dados do XML obtido pelo webservice
            if (((nItem == -1) ? AJAXEndereco : AJAXEndereco[nItem]) != null)
                document.getElementById(((nItem == -1) ? AJAXEndereco : AJAXEndereco[nItem])).value = xmlCep.selectSingleNode("CepEndereco/Endereco").text

            if (((nItem == -1) ? AJAXNumero : AJAXNumero[nItem]) == null) {
                if (((nItem == -1) ? AJAXEndereco : AJAXEndereco[nItem]) != null) {
                    document.getElementById(((nItem == -1) ? AJAXEndereco : AJAXEndereco[nItem])).value += ", ";
                    document.getElementById(((nItem == -1) ? AJAXEndereco : AJAXEndereco[nItem])).focus();
                }
            }
            else
                document.getElementById(((nItem == -1) ? AJAXNumero : AJAXNumero[nItem])).focus();

            if (((nItem == -1) ? AJAXBairro : AJAXBairro[nItem]) != null)
                document.getElementById(((nItem == -1) ? AJAXBairro : AJAXBairro[nItem])).value = xmlCep.selectSingleNode("CepEndereco/Bairro").text;

            if (((nItem == -1) ? AJAXBairro : AJAXCidade[nItem]) != null)
                document.getElementById(((nItem == -1) ? AJAXCidade : AJAXCidade[nItem])).value = xmlCep.selectSingleNode("CepEndereco/Cidade").text;

            cUF = xmlCep.selectSingleNode("CepEndereco/Estado").text;
            if (((nItem == -1) ? AJAXEstado : AJAXEstado[nItem]) != null) {
                var ddlEstado = document.getElementById(((nItem == -1) ? AJAXEstado : AJAXEstado[nItem]));
                for (n = 0; n < ddlEstado.options.length; n++) {
                    if (ddlEstado.options[n].value == cUF) {
                        ddlEstado.selectedIndex = n;
                        break;
                    }
                }
            }

            if (((nItem == -1) ? AJAXUFTipo : AJAXUFTipo[nItem]) != null) {
                if (xmlCep.selectSingleNode("CepEndereco/Tipo").text == "C")
                    document.getElementById(((nItem == -1) ? AJAXUFTipo : AJAXUFTipo[nItem]) + "_0").checked = true;
                else
                    document.getElementById(((nItem == -1) ? AJAXUFTipo : AJAXUFTipo[nItem]) + "_1").checked = true;
            }
        }
        catch (e) {
            return;
            //alert(e);
        }
    }
    //else
    //alert( cResult );
}

function AJAXGetEndereco(nItem) {
    if (nItem >= AJAXCep.length ||
        (((nItem == -1) ? AJAXEndereco : AJAXEndereco[nItem]) != null &&
        document.getElementById(((nItem == -1) ? AJAXEndereco : AJAXEndereco[nItem])).value.length > 0))
        return;

    var txtCep = document.getElementById(((nItem == -1) ? AJAXCep : AJAXCep[nItem]));

    if (txtCep.value == "") {
        //alert("Informe o CEP para continuar");
        //txtCep.focus();
        return;
    }
    xmlCep = GetObjXML(); // new ActiveXObject("Msxml2.DOMDocument");
    if (xmlCep != null) {
        xmlCep.async = true;
        xmlCep.ondataavailable = new Function("AJAXLoadEndereco(" + nItem + ")");
        //alert( AJAXGetWsUtil() + "/GetEndereco?cCep=" + txtCep.value );
        xmlCep.load(AJAXGetWsUtil() + "/GetEndereco?cCep=" + txtCep.value.replace("-", ""));
    }
    else {
        alert("Não há suporte ao componente 'Msxml.DOMDocument' para efetuar a busca automática de CEP");
    }
}

var autoCompletXML = null;

function AJAXauLoad(txt) {
    if (autoCompletXML == null) {
        cType = txt.ClassType;
        cMethod = txt.ClassMethod;
        cParmeter = txt.value;

        if (txt.AutoPostBack == "Set") {
            txt.onchange = new Function("setTimeout('__doPostBack(\"" + txt.id + "\",\"\")', 500)");
            txt.AutoPostBack == "OK";
        }

        autoCompletXML = GetObjXML();  //new ActiveXObject("Msxml2.DOMDocument");
        autoCompletXML.async = true;
        autoCompletXML.ondataavailable = new Function("AJAXauLoadComplete('" + txt.id + "');");
        autoCompletXML.load(AJAXGetWsUtil() + "/AJAXLoadListItens?cType=" + cType + "&cMethod=" + cMethod + "&cParmeter=" + cParmeter);
    }
    else {
        autoCompletXML.abort();
        autoCompletXML = null;
    }
}

function AJAXauLoadComplete(cID) {
    var txt = document.getElementById(cID);
    var out = document.getElementById("dv" + cID);
    out.style.visibility = "visible";

    var cOut = "<div style='height:24;'></div><table class=AutoComplete id=tb" + txt.id + " width='" + txt.style.width + "' bgcolor='#ffffff'>";
    var n, i, cTexto, cValue;

    if (autoCompletXML.documentElement == null) {
        out.style.visibility = "hidden";
        out.innerHTML = "";
    }
    else {

        for (n = 0; n < autoCompletXML.documentElement.childNodes.length; n++) {
            cTexto = autoCompletXML.documentElement.childNodes[n].text;
            i = cTexto.lastIndexOf("|");
            if (i > -1) {
                cValue = cTexto.substr(0, i);
                cTexto = cTexto.substr(i + 1);
            }
            else
                cValue = cTexto;
            cOut += "<tr onclick='AJAXauSelect(this);' id=tr" + txt.id + "_" + n + " style='cursor: hand;'><td>" + cTexto + "</td><td align=right width='10%'>" + cValue + "</td></tr>";
        }
        cOut += "</table>";

        out.innerHTML = cOut;
        out.style.visibility = "visible";
    }


    txt.nSelected = -1;
    txt.title = "Valor Atual: " + document.getElementById(txt.id + "value").value;
    txt.lLostFocus = false;
    autoCompletXML = null;
}

function AJAXauSelect(obj) {
    var n = obj.id.lastIndexOf("_");
    var cid = obj.id.substr(0, n);
    var id = obj.id.substr(n + 1);
    var txt = document.getElementById(cid.substr(2));

    if (txt.nSelected >= 0)
        document.getElementById(cid + "_" + txt.nSelected).style.backgroundColor = "";

    txt.nSelected = id;
    document.getElementById(cid + "_" + txt.nSelected).style.backgroundColor = "#dddddd";

    txt.value = obj.children[0].innerText;
    txt.focus();

    document.getElementById(txt.id + "value").value = obj.children[1].innerText;
    txt.title = "Resutado da Seleção: " + obj.children[1].innerText;

    document.getElementById("dv" + cid.substr(2)).style.visibility = "hidden";

    txt.lLostFocus = false;

}

function AJAXauHide(txt) {
    txt.lLostFocus = true;
    setTimeout("AJAXauAutoHide('" + txt.id + "');", 1000);
}

function AJAXauAutoHide(cID) {
    var txt = document.getElementById(cID);
    if (txt.lLostFocus)
        document.getElementById("dv" + cID).style.visibility = "hidden";
}

function AJAXauonKey(txt) {
    var obj;

    if (txt.nSelected >= 0)
        document.getElementById("tr" + txt.id + "_" + txt.nSelected).style.backgroundColor = "";

    if (event.keyCode == 38) // UP
    {
        txt.nSelected--;
        obj = document.getElementById("tr" + txt.id + "_" + txt.nSelected);
        if (obj == null)
            txt.nSelected++;
        else {
            txt.value = obj.children[0].innerText;
            document.getElementById(txt.id + "value").value = obj.children[1].innerText;
            txt.title = "Resutado da Seleção: " + obj.children[1].innerText;
        }
    }
    else if (event.keyCode == 40) // DOWN
    {
        txt.nSelected++;
        obj = document.getElementById("tr" + txt.id + "_" + txt.nSelected);
        if (obj == null)
            txt.nSelected--;
        else {
            txt.value = obj.children[0].innerText;
            document.getElementById(txt.id + "value").value = obj.children[1].innerText;
            txt.title = "Resutado da Seleção: " + obj.children[1].innerText;
        }
    }
    else if (txt.value.length > 0 && txt.old != txt.value) {
        txt.old = txt.value;
        AJAXauLoad(txt);
    }

    if (txt.nSelected >= 0)
        document.getElementById("tr" + txt.id + "_" + txt.nSelected).style.backgroundColor = "#dddddd";

}



