function fieldInnerDescription(id) {
    var field = $('#'+id);
    var desc  = field.attr('title');

    field.focus(function() {
        if (field.val() == desc) {
            field.val('');
        }
    });

    field.blur(function() {
        if (field.val() == '') {
            field.val(desc);
        }
    });

    field.blur();
}

function validaEmail(str) {
    var filter = /^[a-zA-Z0-9]+[a-zA-Z0-9_.-]+[a-zA-Z0-9_-]+@[a-zA-Z0-9]+[a-zA-Z0-9.-]+[a-zA-Z0-9]+.[a-z]{2,4}$/;
    return filter.test(str);
}

function validaForm(form) {
    var camposInvalidos = [];

    switch (form.id) {
        case 'commentform':
            var nome = $("#author").val();
            if (nome != undefined) {
                if (nome == '') {
                    camposInvalidos.push('Nome não informado');
                }
                else if (nome.length <= 2) {
                    camposInvalidos.push('Nome inválido');
                }
            }

            var email = $("#email").val();
            if (email != undefined) {
                if (email == '') {
                    camposInvalidos.push('E-mail não informado');
                }
                else if (!validaEmail(email)) {
                    camposInvalidos.push('E-mail inválido');
                }
            }

            var comment = $("#comment").val();
            if (comment != undefined) {
                if (comment == '') {
                    camposInvalidos.push('Comentário não informado');
                }
                else if (comment.length <= 5) {
                    camposInvalidos.push('Comentário muito curto');
                }
            }
    }

    if (camposInvalidos.length == 0) {
        return true;
    } else {
        var cfg = {
                title    : 'Atenção',
                bgiframe : true,
                modal    : true,
                buttons  : {
                    Ok : function() {
                        $(this).dialog('close');
                    }
                },
                icon     : 'alert',
                message  : '- '+camposInvalidos.join(';<br />- ')+'.'
            };

        showDialog(cfg);

        return false;
    }
}

function showDialog(config) {
    if (config.icon) {
        config.message = '<span class="ui-icon ui-icon-'+config.icon+'" style="float:left; margin:0 7px 20px 0;"></span>'+config.message;
    }

    $('<div></div>').html(config.message).dialog(config);
}