/* Questa funzione va a creare un blocco div all'interno della pagina che contiene la lista delle news,per creare l'anteprima del corpo della notizia */
function creaAnteprimaNews(evento,stringa_testo_news,immagine_di_sfondo){
 	/* Prima di creare una nuova anteprima devo controllere che non siano rimaste quelle vecchie,puņ accadere con la presentazione nella sezione galleria */
 	eliminaVecchieRicorrenze();
    /* Devo determinare la posizione del mouse,modificarla in base allo scroll ed assegnarla a due variabili pos_x e pos_y */
    var pos_x = 0;
    var pos_y = 0;
    var costante_x = 100;
    var costante_y = 30;
    /* IE utilizza funzioni diverse...quindi prima vedo che browser si sta usando controlando se supporta la funzione "pageX" */
    if(evento.pageX){
		pos_x = evento.pageX;
		pos_y = evento.pageY;
	} else if (evento.clientX){
		pos_x = evento.clientX + document.body.scrollLeft;
		pos_y = evento.clientY + document.body.scrollTop;
	}
	pos_x = pos_x - costante_x;
	pos_y = pos_y + costante_y;
    /* Individuo il punto nell'albero DOM in cui inserire l'anteprima' */
    var tag_body_array = document.getElementsByTagName("body");
    var blocco_contenitore = tag_body_array[0];
 	/* Creo il nodo di testo da inserire dentro il div che mi visualizza l'anteprima */
 	var stringa_corretta = correggiStringa(stringa_testo_news);
 	var testo_anteprima = document.createTextNode(stringa_corretta);
 	/* Creo il div che contiene l'anteprima e ne setto gli attributi */
	var div_anteprima = document.createElement("div");
	div_anteprima.setAttribute("id","bloccoAnteprima");
	div_anteprima.setAttribute("style","background-image:url("+immagine_di_sfondo+")");
	/* questo secondo contenitore serve a risolvere i problemi di padding che col solo nodo di tipo testo non sono riuscito a risolvere */
	var div_testo_anteprima = document.createElement("div");
	div_testo_anteprima.setAttribute("id","bloccoTestoAnteprima");
	/* Aggiungo prima il nodo testo al div dove voglio sia visualizzata l'anteprima e poi tale div al blocco contenitore della lista di news */	
	div_testo_anteprima.appendChild(testo_anteprima);
	div_anteprima.appendChild(div_testo_anteprima);
	blocco_contenitore.appendChild(div_anteprima);
	div_anteprima.style.left = pos_x;
	div_anteprima.style.top = pos_y;
}

/* Questa funzione va a rimuovere l'anteprima quando il mouse esce dal link */
function rimuoviAnteprima(){
	/* Controllo che ci sia qualcosa da rimuovere */
	if(document.getElementById("bloccoAnteprima") != null){
		/* Prendo l'elemento da riumuovere e il suo padre e rimuovo il blocco */
		var tag_body_array = document.getElementsByTagName("body");
    	var blocco_contenitore = tag_body_array[0];
		var div_anteprima = document.getElementById("bloccoAnteprima");
		blocco_contenitore.removeChild(div_anteprima);
	}
}

/* Questa funzione si occupa di spostare il blocco dell'anteprima una volta che il mouse si sposta */
function riposizionaAnteprima(evento){
	 /* Devo determinare la posizione del mouse,modificarla in base allo scroll ed assegnarla a due variabili pos_x e pos_y */
    var pos_x = 0;
    var pos_y = 0;
    var costante_x = 100;
    var costante_y = 30;
    /* IE utilizza funzioni diverse...quindi prima vedo che browser si sta usando controlando se supporta la funzione "pageX" */
    if(evento.pageX){
		pos_x = evento.pageX;
		pos_y = evento.pageY;
	} else if (evento.clientX){
		pos_x = evento.clientX + document.body.scrollLeft;
		pos_y = evento.clientY + document.body.scrollTop;
	}
	pos_x = pos_x - costante_x;
	pos_y = pos_y + costante_y;
	/* Ora trovo l'elemento da spostare e lo sposto */
	var div_anteprima = document.getElementById("bloccoAnteprima");
	div_anteprima.style.left = pos_x;
	div_anteprima.style.top = pos_y;		
}

/* Questa funzione elimina ogni blocco anteprima precedentemente creato...serve a evitare che i blocchi si moltiplichino */
function eliminaVecchieRicorrenze(){
	while(document.getElementById("bloccoAnteprima") != null){
		rimuoviAnteprima();
	}
}

/* Questa funzione crea una matrice di stringhe ,separando la stringa originale ogni volta che incontra "<br />" */
function correggiStringa(stringa_testo){
	var espressione_da_cercare = /<br \/>/g;
	var stringa_da_sostituire = " ";
    return stringa_testo.replace(espressione_da_cercare,stringa_da_sostituire);
}




