String.prototype.trim=function(){
    return this.replace(/^\s*|\s*$/g,'');
};
YAHOO.namespace("mastop");
YAHOO.mastop.Carrinho = function(){
    var yud = YAHOO.util.Dom;
    var yue = YAHOO.util.Event;
    var yuc = YAHOO.util.Connect;
    var panel = new YAHOO.widget.Panel(
            "panel", // ID do Elemento
            {
                width: "580px", 
                fixedcenter: true, 
                close: false, 
                draggable: false, 
                zindex: 4,
                modal: true,
                visible: false
            }
        );
    return {
        init: function(){
            yue.onDOMReady(this.Start, this, true);
        },
        Start: function(){
            yue.on("calculaFrete", "click", this.getFrete);
            yue.on("calculaCupom", "click", this.getCupom);
            yue.on("buscaCep", "click", this.openCEP);
        },
        getFrete: function(e){
        	var cep1 = yud.get('cep1');
        	var cep2 = yud.get('cep2');
        	if(cep1.value.trim() == "" || cep2.value.trim() == ""){
        		alert('Digite seu CEP');
        		yue.stopEvent(e);
        		return false;
        	}
        	var closeBtn = "<a id=\"freteFechar\" href=\"javascript:void(0);\">Fechar<\/a>";
        	panel.setBody("<img src='"+mastopURL+"/images/load.gif' align='absmiddle'> Aguarde... ");
        	panel.render(document.body);
        	panel.show();
            var postData = "cep="+cep1.value+'-'+cep2.value;
        	var sucesso = function(o){
        		panel.hide();
        		panel.setBody("<p>"+o.responseText+"<\/p>" + closeBtn);
        		panel.show();
        		yue.on("freteFechar", "click", function() {
                    panel.hide();
                });
            };
            var falha = function(o){
            	panel.hide();
            	panel.setBody("<p>Erro: "+o.statusText+"<\/p>" + closeBtn);
            	panel.show();
            	yue.on("freteFechar", "click", function() {
                    panel.hide();
                });
            };
            var callback =
            {
                success:sucesso,
                failure:falha
            };
            var request = yuc.asyncRequest('POST', mastopURL+"/pedidos/getFrete.php", callback, postData);
        	yue.stopEvent(e);
        },
        getCupom: function(e){
        	var cupomDesconto = yud.get('cupomDesconto');
        	if(cupomDesconto.value.trim() == ""){
        		alert('Digite seu código do Cupom para calcular seu desconto.');
        		yue.stopEvent(e);
        		return false;
        	}
        	var closeBtn = "<a id=\"cupomFechar\" href=\"javascript:void(0);\">Fechar<\/a>";
        	panel.setBody("<img src='"+mastopURL+"/images/load.gif' align='absmiddle'> Aguarde... ");
        	panel.render(document.body);
        	panel.show();
            var postData = "cupomDesconto="+cupomDesconto.value;
        	var sucesso = function(o){
        		
        		var resposta = JSON.parse(o.responseText);
        		if(resposta.status==1){
        			var closeBtn = "<br /><br /><a id=\"cupomFechar\" href=\"javascript:void(0);\">Fechar<\/a>";
        			yud.get('cupomValor').innerHTML = "<span class='descontoValor'>"+resposta.desconto+"</span>";
                	yud.get('pedTotalValor').innerHTML = resposta.valorPedido;
                	if(resposta.message!=''){
                		panel.setBody(resposta.message + closeBtn);
                	}else{
                		panel.hide();
                	}
                	yue.on("cupomFechar", "click", function() {
                        panel.hide();
                    });
        		}else{
        			var closeBtn = "<a id=\"cupomFechar\" href=\"javascript:void(0);\">Fechar<\/a>";
                	panel.setBody("<img src='"+mastopURL+"/images/load.gif' align='absmiddle'> Aguarde... ");
        			panel.setBody("<p>"+resposta.message+"<\/p>" + closeBtn);
        			yud.get('cupomValor').innerHTML = "<span class='descontoValor'>"+resposta.desconto+"</span>";
                	yud.get('pedTotalValor').innerHTML = resposta.valorPedido;
            		panel.show();
            		yue.on("cupomFechar", "click", function() {
                        panel.hide();
                    });
        		}
        		
            };
            var falha = function(o){
            	panel.hide();
            	panel.setBody("<p>Erro: "+o.statusText+"<\/p>" + closeBtn);
            	panel.show();
            	yue.on("cupomFechar", "click", function() {
                    panel.hide();
                });
            };
            var callback =
            {
                success:sucesso,
                failure:falha
            };
            var request = yuc.asyncRequest('POST', mastopURL+"/cupom/getCupom.php", callback, postData);
        	yue.stopEvent(e);
        },
        writeFrete: function(fde, valor, valorTotal,cep){
        	yud.get('freteRetorno').innerHTML = fde;
        	yud.get('freteValor').innerHTML = valor;
        	yud.get('pedTotalValor').innerHTML = valorTotal;
        	panel.hide();
        	var postData = "valor="+valor+"&valorTotal="+valorTotal+"&fde="+fde+"&cep="+cep;
        	var sucesso = function(o){};
            var falha = function(o){};
            var callback =
            {
                success:sucesso,
                failure:falha
            };
            var request = yuc.asyncRequest('POST', mastopURL+"/pedidos/getFreteSession.php", callback, postData);
        },
        openCEP: function(){
            window.open('http://www.buscacep.correios.com.br/servicos/dnec/menuAction.do?Metodo=menuLogradouro','ShowCep','location=no,resize=no, width=730,height=400,left=18,top=18,maximized=0,scrollbars=1');
        }
    }
}();
YAHOO.mastop.Carrinho.init();
function autofocus(field, limit, next, evt) {
    evt = (evt) ? evt : event;
    var charCode = (evt.charCode) ? evt.charCode : ((evt.keyCode) ? evt.keyCode : 
        ((evt.which) ? evt.which : 0));
    if (charCode > 31 && field.value.length == limit) {
        field.form.elements[next].focus();
        field.form.elements[next].select();
    }
}
