/*
 * jsSnippet
 */
var tag        = 'span'; // tag a ser checada
var place      = 'testimonial'; // id do receptor de conteúdo
var origin     = '_support/include.index.testimonials.php'; // url / caminho da fonte de conteúdo
var mask       = new RegExp('<'+tag+'>(.+?)<\/'+tag+'>', 'gim'); // máscara de filtro para o conteúdo
var timing     = 6; // tempo em segundos de intervalo entre as notícias
var animTiming = .25 // tempo em segundos do intervalo de animação

// Fixos
var timer  = null; // manter NULL por padrão
var i      = 0; // indice de interação

/**
 * Obtem e formata o conteúdo.
 * 
 * @param {Object,String} from
 * @param {Object,String} to
 * @param {RegExp} pattern
 */
function snipGet (from, to, pat)
{
    $.get(from, null, function (d) {
        if (!/^\s*$/.test(d))
        {
            d = String(d).replace(/\n|\r|\t/gm, '').replace(/ +/gm, ' ');
            to = $(to);
            
            var itens = String(d).match(pat);
            to.fadeIn(animTiming*1e3);
            to.html(itens[i++].replace(/<p>/i, '').replace(/<\/p>/i, ''));
            
            if (i == itens.length)
                i = 0;
        }
    });
}

/**
 * Anima a transição.
 */
function snipAnim ()
{
    place.fadeOut(animTiming*1e3, function () {
        snipGet(origin, place, mask);
    });
}

/**
 * Inicializa.
 */
function snipInit ()
{
    place = $('#'+place);
    timer = setInterval(snipAnim, (timing*1e3) + (animTiming*2e3));
    snipAnim();
}

$(function () {
    snipInit();
});

