
function debug(something){
    alert('[' + something + ']');
}

String.prototype.trim = function(){return
(this.replace(/^[\s\xA0]+/, "").replace(/[\s\xA0]+$/, ""))}

String.prototype.startsWith = function(str)
{return (this.match("^"+str)==str)}

String.prototype.endsWith = function(str)
{return (this.match(str+"$")==str)}

function setLanguage(lang){
    $('#languageForm #language').val(lang);
    $('#languageForm').submit();
}

function setDotMask(value){
    var value = value.toString();
    var newValue = value;
    var stop = false;
    if (value.length > 4) {
        newValue = value.substring(value.length - 3);
        seed = value.substring(0, value.length - 3);
        while (!stop) {
            if (seed.length <= 3) {
                stop = true;
                newValue = seed + '.' + newValue;
            }
            else 
                newValue = seed.substring(seed.length - 3) + '.' + newValue;
            seed = seed.substring(0, seed.length - 3);
        }
    }
    return newValue;
}

function addToNewsletterList() {
	$('.news_msg').hide();
	
	if (verifyEmailField($('#newsletterbox #news_email').val())) {
		$.post('/addsubscriber/', {
	        email: $('#news_email').val()
	    }, function(response) {
			if (response == '0') {
				$('#newsletterbox #saveEmail').show();
				$('#newsletterbox #news_email').focus();
			}
			else {
				$('#newsletterbox #okEmail').show();
				$('#newsletterbox #news_email').val('');
			}
	    });
	} else {
		$('#newsletterbox #badEmail').show();
		$('#newsletterbox #news_email').focus();
	}
}

/************************************  EMAIL  ********************************/


function sendEmail(objectTypeID, objectID){
    //verifica os campos
    cname = $('#cf_name');
    $('#lb_name').removeClass('red');
    if (cname.val() == '') {
        cname.focus();
        $('#lb_name').addClass('red')
        return;
    }
    
    cphone = $('#cf_phone');
    $('#lb_phone').removeClass('red');
    cemail = $('#cf_email');
    $('#lb_email').removeClass('red');
    
    if (cemail.val() == '' && cphone.val() == '') {
        cphone.focus();
        $('#lb_phone').addClass('red')
        return;
    }
    if ((cphone.val() == '') && (cemail.val() == '' || !verifyEmailField(cemail.val()))) {
        cemail.focus();
        $('#lb_email').addClass('red')
        return;
    }
    
    ctext = $('#cf_msg');
    $('#lb_msg').removeClass('red');
    if (ctext.val() == '') {
        ctext.focus();
        $('#lb_msg').addClass('red')
        return;
    }
    
    company = $('#cf_company');
    $('#contactFormOverlay').show();
    
    //Envia o email
    $.post('/contactar/' + objectTypeID + '/' + objectID + '/', {
        name: cname.val(),
        phone: cphone.val(),
        email: cemail.val(),
        company: company.val(),
        comment: ctext.val()
    }, function(){
        alert(gettext('Mensagem enviada com sucesso.'));
        $('#contactForm input[type=text]').val('');
        $('#contactForm textarea').val('');
        $('#contactFormOverlay').hide();
    });
}

function verifyEmailField(email){
    return (/^((([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-\x09\x0b\x0c\x0d-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22)))@((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?$/i.test(email));
}

/************************** COOKIES **************************/

function set_cookie(name, value, exp_y, exp_m, exp_d, path, domain, secure){
    var cookie_string = name + "=" + escape(value);
    if (exp_y) {
        var expires = new Date(exp_y, exp_m, exp_d);
        cookie_string += "; expires=" + expires.toGMTString();
    }
    if (path) 
        cookie_string += "; path=" + escape(path);
    if (domain) 
        cookie_string += "; domain=" + escape(domain);
    if (secure) 
        cookie_string += "; secure";
    document.cookie = cookie_string;
}

function delete_cookie(cookie_name){
    var cookie_date = new Date();
    cookie_date.setTime(cookie_date.getTime() - 1);
    document.cookie = cookie_name += "=; expires=" + cookie_date.toGMTString();
}

function get_cookie(cookie_name){
    var results = document.cookie.match('(^|;) ?' + cookie_name + '=([^;]*)(;|$)');
    if (results) 
        return (unescape(results[2]));
    else 
        return null;
}

