O que significa o (not provided) no Google Analytics?

A expressão (not provided) entre os termos procurados nos buscadores no painel do Google Analytics significa que um visitante autenticado no Google acessou o seu site através do buscador.

Desde outubro de 2011, o Google implementou o protocolo SSL nas buscas para os usuários autenticados alegando em seu blog oficial questões de segurança e privacidade. Dessa forma, se o seu site receber uma visita proveniente de alguma busca que contar com a criptografia SSL ela será identificada apenas como (not provided).

O que fazer?

Infelizmente não há nada o que se possa fazer para saber quais foram os termos buscados. O que pode servir de consolo porém, é que os clicks pagos continuarão a ser monitorados como anteriormente.

Função trim em javascript

A função trim é muito utilizada para tratar strings em várias linguagens, entretanto não há implementação padrão em Javascript.

Essa função consiste em retirar alguns caracteres (normalmente os espaços em branco, quebras de linha ou outros caracteres relevantes) do início e do fim da string, com a finalidade de torná-la limpa.

O trim recebe dois parâmetros normalmente, o primeiro com a string a ser tratada e o segundo com os caracteres que serão removidos dos extremos, concatenados. Segue abaixo a implementação em Javascript:

function trim(entrada, indesejados){
	var i, retorno;
	retorno = entrada;
	var cortePadrao = " \n\t\r";
	if (typeof(indesejados)=='undefined' || indesejados =='') {
		indesejados = cortePadrao;
	} else {
		indesejados += cortePadrao;
	}
 
	//limpando o início
    for (i = 0; i < retorno.length; i++) {
        if (indesejados.indexOf(retorno.charAt(i)) === -1) {
            retorno = retorno.substring(i);
            break;
        }
    }
 
	//limpando o fim
    for (i = (retorno.length - 1); i >= 0; i--) {
        if (indesejados.indexOf(retorno.charAt(i)) === -1) {
            retorno = retorno.substring(0, i + 1);
            break;
        }
    }
	return retorno;
}

Outra opção é a utilização de uma expressão regular apenas para tirar espaços em branco e afins das beiradas da string. Nesse caso o javascript ficaria bem mais simples:

function trim(str) {
	return str.replace(/^\s+|\s+$/g,"");
}

Vale lembrar que se você estiver com a biblioteca do jQuery carregada por exemplo, a implementação já existe: jQuery.trim(str). Além disso alguns navegadores que implementam versões mais recentes do javascript possuem a função nativa. Entretanto contar com esse suporte faria seu site não ser funcional para uma parcela significativa dos usuários.