var PA_docArray = new Array(".pdf",".doc",".docx",".xls",".ppt");

// Ajoute une fonction aux liens externes
// Cette fonction ajoutera les liens externes dans Percute Analytique
if (document.links) 
{
	var i;
	var link;
	var links = document.links;
	for (i = 0; i < links.length; i++) 
	{
		link = links[i];
		// On regarde si c?est un lien externe
		if (PA_isExternalLink(link.href))
		{
				// S?il y a des évènement Onclick, on les sauvegarde
				if (link.onclick) 
			{
						link.oldonclick = link.onclick;
					}
					link.onclick = PA_linkOnClick;
		}
	}
}

// Ajoute une fonction aux liens vers les fichiers PDF | Word | Excel | PowerPoint
// Cette fonction ajoutera les ces fichiers
// comme des pages vues dans Percute Analytique
function PA_checkDoclinks()
{
    if (document.links) 
    {
	    var i;
	    var link;
	    var links = document.links;
	    for (i = 0; i < links.length; i++) 
	    {
		    link = links[i];
		    // On regarde si c�est un lien vers un fichier que l'on veut analyser
		    if (PA_isDocLink(link.href))
		    {
			    // S�il y a des �v�nement Onclick sur le lien, on les sauvegarde
			    if (link.onclick) 
			    {
	    	        link.oldonclick = link.onclick;
    		    }
	        	link.onclick = PA_linkOnClickFile;
		    }
	    }
    }
}


// V�rifie si le lien est un document que l'on veut garder
function PA_isDocLink(link)
{
	var i = 0;
	for (i = 0; i < PA_docArray.length; i++)	
	{
		if (link.toLowerCase().indexOf(PA_docArray[i]) > 0)
		{
			return true;
		}
	}
	return false;
}

// V�rifie si le lien est externe
function PA_isExternalLink(link)
{
	var myDomain =  window.location.hostname
	// Si d�bute avec / alors ce n'est pas un lien externe
	if (link[0] == '/')
	{
		return false;
	}
	// Si le domain est diff�rent alors c'est un lien externe
	if (link.indexOf(myDomain) < 0)
	{
		return true;
	}
	return false;
}

function PA_linkOnClick() 
{
	var link = this;
	// v?rifie les ancien onclick
	if (link.oldonclick) 
	{
			// verifie si c?est une fonction
			if (typeof (link.oldonclick) == 'function') 
		{
				// execute la fonction
				if (link.oldonclick () == false) 
			{
						return false;
					}
			}
		}
	PA_savelink(link.href);
	return true;
}


function PA_linkOnClickFile() 
{
	var link = this;
	// v�rifie les anciens onclick
	if (link.oldonclick) 
	{
		// verifie si c�est une fonction
		if (typeof (link.oldonclick) == 'function') 
		{
			// execute la fonction
			if (link.oldonclick () == false) 
			{
	        	return false;
    		}
		}
	}
	// Enregistre le PDF comme une page vue
	PA_addPage(PA_getFilename(link.href));
	return true;
}


function PA_savelink(extLink)
{
	var maVariablePerso = " lienSortie";
	var maValeurPerso =  extLink;

	PA_writeLog(maVariablePerso, maValeurPerso);
}


function PA_getFilename(str) 
{ 
    var myDomain =  window.location.hostname;
    // Enleve le http | https
    str = str.toLowerCase();
    str = str.replace("http://","");
    str = str.replace("https://","");
    // Enleve le domaine
    return str.replace(myDomain,"");
} 

// V�rifie les fichiers PDF / word lorsque la page est charg�e
window.onload = PA_checkDoclinks;

