function ltrim(s)
{
	var l=0;
	while(l < s.length && s.charAt(l) == " ")
	{	l++; }
	return s.substring(l, s.length);
}

function rtrim(s)
{
	var r=s.length -1;
	while(r > 0 && s.charAt(r) == ' ')
	{	r-=1;	}
	return s.substring(0, r+1);
}

function trim(s)
{
	return rtrim(ltrim(s));
}



//Função que verifica se um valor está inserido em um array
Array.prototype.has=function(v){
	for (i=0; i<this.length; i++){
		if (this[i]==v) return i;
	}
	return false;
} 


function noNumbers(e)
{
	var keynum;
	var keychar;
	var numcheck;

	if(window.event) // IE
	{
		keynum = e.keyCode;
	}
	else if (e.which) // Netscape/Firefox/Opera
	{
		keynum = e.which;
	}
	keychar = String.fromCharCode(keynum);
	numcheck = /\d/;
	
	return !numcheck.test(keychar);
}



function noLetters(e)
{
	var keynum;
	var keychar;
	var numcheck = new Array (
		0, 8, 9, 13, 46,
		48, 49, 50, 51, 52, 53, 54, 55, 56, 57, //
		96, 97, 98, 99, 100, 101, 102, 103, 104, 105 //
	);
	
	
	if(window.event) // IE
	{
		keynum = e.keyCode;
	}
	else if (e.which) // Netscape/Firefox/Opera
	{
		keynum = e.which;
	}
		
	keychar = String.fromCharCode(keynum);
	if (numcheck.has(keynum)) { return true; } 
	else { return false; }
	
}


//Permite apenas caracteres para formatação de um campo CEP
function cepChars(e)
{
	var keynum;
	var keychar;
	var numcheck = new Array (
		0, 8, 9, 13, 46, 109,  // other functional characters
		48, 49, 50, 51, 52, 53, 54, 55, 56, 57, // numbers in the main keyboard
		96, 97, 98, 99, 100, 101, 102, 103, 104, 105 // numbers with numlock
		
	);
	
	
	if(window.event) // IE
	{
		keynum = e.keyCode;
		tgt = e.srcElement;
		val = tgt.value;
	}
	else if (e.which) // Netscape/Firefox/Opera
	{
		keynum = e.which;
		tgt = e.target;
		val = tgt.value;
	}
	//alert(keynum);
	if (keynum == 109 && val.length != 5){ return false; }
	else if (
		val.length == 5 && numcheck.has(keynum) && keynum != 8 && keynum != 9 && keynum != 46 && keynum != 109 
	){
		tgt.value += "-";
	}		
	keychar = String.fromCharCode(keynum);
	
	if (numcheck.has(keynum)) { return true; }
	else { return false; }
	
}




//Permite apenas caracteres para formatação de um campo CEP
function moneyChars(e)
{
	var keynum;
	var keychar;
	var numcheck = new Array (
		0, 8, 9, 13, 46, 190, 194, 37, 38, 39, 40,  // other functional characters
		48, 49, 50, 51, 52, 53, 54, 55, 56, 57, // numbers in the main keyboard
		96, 97, 98, 99, 100, 101, 102, 103, 104, 105 // numbers with numlock
	);
	
	
	if(window.event) // IE
	{
		keynum = e.keyCode;
		tgt = e.srcElement;
		val = tgt.value;
	}
	else if (e.which) // Netscape/Firefox/Opera
	{
		keynum = e.which;
		tgt = e.target;
		val = tgt.value;
	}

	//alert(keynum);
	//alert(val);
	
	if ((keynum == 190 || keynum == 194) && val.indexOf('.') > -1){ return false; }
	$ponto = val.indexOf('.')+1;
	if (
		$ponto > 0 && (val.length - $ponto)>=3
		&& (keynum != 8 && keynum != 9 && keynum != 46 && keynum != 13)
	){ return false; }

	keychar = String.fromCharCode(keynum);
	
	if (numcheck.has(keynum)) { return true; }
	else { return false; }
	
}



function str_replace (search, replace, subject, count) {
    // Replaces all occurrences of search in haystack with replace  
    // 
    // version: 909.322
    // discuss at: http://phpjs.org/functions/str_replace
    // +   original by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
    // +   improved by: Gabriel Paderni
    // +   improved by: Philip Peterson
    // +   improved by: Simon Willison (http://simonwillison.net)
    // +    revised by: Jonas Raoni Soares Silva (http://www.jsfromhell.com)
    // +   bugfixed by: Anton Ongson
    // +      input by: Onno Marsman
    // +   improved by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
    // +    tweaked by: Onno Marsman
    // +      input by: Brett Zamir (http://brett-zamir.me)
    // +   bugfixed by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
    // +   input by: Oleg Eremeev
    // +   improved by: Brett Zamir (http://brett-zamir.me)
    // +   bugfixed by: Oleg Eremeev
    // %          note 1: The count parameter must be passed as a string in order
    // %          note 1:  to find a global variable in which the result will be given
    // *     example 1: str_replace(' ', '.', 'Kevin van Zonneveld');
    // *     returns 1: 'Kevin.van.Zonneveld'
    // *     example 2: str_replace(['{name}', 'l'], ['hello', 'm'], '{name}, lars');
    // *     returns 2: 'hemmo, mars'
    var i = 0, j = 0, temp = '', repl = '', sl = 0, fl = 0,
            f = [].concat(search),
            r = [].concat(replace),
            s = subject,
            ra = r instanceof Array, sa = s instanceof Array;
    s = [].concat(s);
    if (count) {
        this.window[count] = 0;
    }

    for (i=0, sl=s.length; i < sl; i++) {
        if (s[i] === '') {
            continue;
        }
        for (j=0, fl=f.length; j < fl; j++) {
            temp = s[i]+'';
            repl = ra ? (r[j] !== undefined ? r[j] : '') : r[0];
            s[i] = (temp).split(f[j]).join(repl);
            if (count && s[i] !== temp) {
                this.window[count] += (temp.length-s[i].length)/f[j].length;}
        }
    }
    return sa ? s : s[0];
}









function adjustMoney($val){
	$r = (Math.round($val*100))/100;
	$r = ""+$r;
	
	if ($r.indexOf('.') == -1){	$r = $r+",00";	}
	else if (( $r.length - ($r.indexOf('.')+1) ) < 2) {
		$r = $r+"0";
	}
	$r = $r.replace(".", ",");
	return $r;
}








function arredondar($val){
	return Math.round($val*100)/100;
}












function irParaBebida(){
	location.href="pedido_bebida.php";
	return false;
}
function irParaPizza(){
	location.href="pedido_pizza.php";
	return false;
}
function irParaCesta(){
	location.href="pedido_cesta.php";
	return false;
}

function irParaEnderecos(){
	location.href="pedido_enderecos.php";
	return false;
}


