/* $Id: 3x7.js,v 1.6 2008-02-11 12:02:32 tagliente Exp $ */

var NEG_CLASS = "fbnegativo";
var POS_CLASS = "fbpositivo";
var TD_PUNTATA_MULTIPLA = "tdPMult";
var TD_PUNTATA = "tdP";
var TD_VINCITA = "tdV";
var TD_VINCITA_TOTALER = "tdVTOTR";
var TD_VINCITA_TOTALEL = "tdVTOTL";

var DIV_VINCITA = "vincita";
var DIV_BONUS = "bonus";
var DIV_TIPO_BONUS = "tipoBonus";

var PAR_BONUS_VAR_NUM = "numBonus";
var PAR_BONUS_VAR_PERC = "percBonus";
var LABEL_BONUS_FISSO = "Fisso";
var ID_BONUS_FISSO = "bFisso";
var ID_BONUS_VAR_NUM = "bVarN";
var ID_BONUS_VAR_PERC = "bVarPerc";
var TAG_LOGGATO = "3prt7";

var NOME_COOKIE_SCHEDINA_3X7 = "schedina3x7";

var NOME_COOKIE_GIOCATE_3X7 = "giocate3x7";

var DIV_3X7_BODY = "3x7body";
var DIV_3x7_BOTTONS = "content37Bottom";
var DIV_3X7_FOOT = "footer37";
var DIV_3x7_GIOCATE = "numGiocate";
var DIV_3x7_EVENTI = "neventi";
var ID_SALDO_DIV = "saldo";
var DIV_ALERT = "errore";
var DIV_PULSANTE = "startDiv";
var DIV_GIOCO_CHIUSO = "giocoChiuso";
var DIV_NUM_CONCORSO="numConcorso";
var ID_CONTO_DIV = "idContoGioco";
var ID_BOX_VINCITA="boxVincita";

var ID_SICURO = 0;
var ID_MASSIMO = 1;
var ID_RANDOM = 2;

var FOOTER_SECTION = "trepersette/3x7footer.jsp";
var FOOTER_SECTION3 = "trepersette/3x7footerStep3.jsp";
var BUTTON_SECTION="trepersette/3x7button.jsp";
var HELP_SECTION="trepersette/3x7help.jsp";
var BONUS_SECTION="trepersette/3x7vinciBonus.jsp";
//var PROBLEM_PAGE="/bet/scommesse/3x7problem.jsp";
var PROBLEM_PAGE="/bet/3x7nonDisponibile.html";

var MAX_BOTTONI = 3;
var bottoni = new Array(MAX_BOTTONI);
	bottoni[0]="";
	bottoni[1]="";
	bottoni[2]="<div id=\"tentaLaFortuna\"> <p id=\"textFortuna\">Compila casualmente il 3x7</p><p id=\"BtnFortuna\"><a href=\"javascript:scegliQuote(2);\">Tenta la fortuna</a></p> </div>";

var boxVincita = new Array(2);
var BOX_VINCITA_LITE = 0;
var BOX_VINCITA_BONUS = 1;

var CLASS_HERE = "class=\"here\"";
var CLASS_TAG = "classe";

var GIOCO_ON = 0;
var GIOCO_OFF = 1;
var vettore3x7 = new Vector(7);
var vettoreCompleto3x7 = new Hashtable();

var SC_ID_ITEM = 0;
var SC_GARA_ITEM = 1;
var SC_QUOTA_ITEM1 = 2; 
var SC_QUOTA_ITEMX = 3; 
var SC_QUOTA_ITEM2 = 4; 
var SC_SELEZIONE_MULTIPLA = 5;
var SC_PRONOSTICO_ID1= 6;
var SC_PRONOSTICO_IDX= 7;
var SC_PRONOSTICO_ID2= 8;
var SC_SCOMMESSA = 9;

var ID_ITEM = 0;
var GARA_ITEM = 1;
var PRONOSTICO_ITEM = 2;
var QUOTA_ITEM = 3; 
var SELEZIONE_MULTIPLA = 4;
var PRONOSTICO_ID= 5;
var SCOMMESSA = 6;

var ITEM_POS = 0;
var STEP_POS = 1;
var	SCOM_POS = 2;
var INDEX_POS = 3;
var IMPBONUS_POS = 4;
var PERBONUS_POS = 5;
var NUMBONUS_POS = 6;

var SEPARATORE_COMPONENTI = "$";
var SEPARATORE_ITEM = "@";
var SEPARATORE_GIOCATE = "|";

var RIEPILOGO = "r";
var SPEDITA = "a";
var CANCELLATA = "c";
var NOTIFICA_FINE_GIOCO = "b";

var URL_API_3X7 = "/api-bet/gioca3x7.html?cookie=";
var URL_API_RESET_3X7 = "/api-bet/reset3x7.html";
var URL_API_REPORT_3X7 = "/api-bet/riepilogo3x7.html";
var PRONOSTICI_SECTION = "/bet/getTabella3X7Pronostici.html";
var QUOTE_SECTION = "/bet/getTabella3X7Quote.html";
var ALFRESCO_SECTION = "/bet/hp-3X7-contenuti/";

var PUNTATA = 3;

var VINCITA_MASSIMA = 10000; 
var SOGLIA_QUOTA_BONUS = 2873.561;

var QUOTA_EVIDENZIATA = "here";
var QUOTA_SEMPLICE = "";

var SELEZIONATO = "checked";
var NON_SELEZIONATO = " ";

var MIN_MULTIPLA=5;
var MAX_MULTIPLA = 20;

var stringaCookieAlfresco="";

var stepAttuale = 0;

var scommessaAttuale = 1;

var numeroScommesse = 1;

var actualIndex = 0;

var importoBonusFisso = 0;
var percBonusVariabile = 0;
var numBonusVariabile = 0;

var numeroElementiMultipla = 0;

var quotaProduttoria = 1;

var puntataMultipla  = PUNTATA;

var eventoNegato = "NESSUNO";
function playAgain() {

	window.location.href = "/bet/index.html";
}

function creaBottoni(tipo){
	
	var stringaBottoni = "";
	
	if(tipo==ID_RANDOM) {
		randomizeSchedina();
	}
	
	for (var i = 0; i<MAX_BOTTONI;i++) {

		var actualString = bottoni[i];
		stringaBottoni+=actualString;
		
	}
	
	return stringaBottoni;
}

function getStringParameter(searchLoc,parametro) {
	
	var lengSearch = searchLoc.length;
	var parameters  = searchLoc.substring(1,lengSearch);
	var parametersArray = parameters.split("&");
	var k = parametersArray.length;
	var result;	
	for (i= 0 ; i < k; i++) {		
		if(parametersArray[i].indexOf(parametro)>=0) {			
			parametersArray1 = parametersArray[i].split("=");
			result = parametersArray1[1];			
		}
	}
	return result;
}

function getConcorso() {

	var stringaDati = getPage(ALFRESCO_SECTION);
	
	var numConcorso = getStringParameter(stringaDati,"numeroConcorso");
	var dataConcorso= getStringParameter(stringaDati,"dataConcorso");
	if(numConcorso&&dataConcorso) {
		altercontent(DIV_NUM_CONCORSO,numConcorso+" - "+dataConcorso);
	}
	
}


function scegliQuote(tipo) {

	creaBottoni(tipo);
	
}


function mostraPronostici() {

	var paginaPronostici = getPage(PRONOSTICI_SECTION+stringaCookieAlfresco);
	
	altercontent(DIV_3X7_BODY,paginaPronostici);
	resetToStep1();
	
}

function mostraQuote() {

	var paginaQuote = getPage(QUOTE_SECTION+stringaCookieAlfresco);
	
	altercontent(DIV_3X7_BODY,paginaQuote);
	resetToStep1();
	
}

function checkAllSection() {

	var elementiCompleti = vettoreCompleto3x7.values();
	
	var vectorChecked = new Vector(7);
	
	for(var i=6;i>=0;i--) {
		
		if(elementiCompleti[i][SC_SELEZIONE_MULTIPLA] ==SELEZIONATO) {
			check3x7SectionStep1(elementiCompleti[i][SC_ID_ITEM]);
			numeroElementiMultipla++;
			vectorChecked.addElement(elementiCompleti[i][SC_ID_ITEM]);
		}
		
	}

	return vectorChecked;
	
}

function initPage() {

	getBrowserVersion();
	
	
	var footer = "";
	
	
	stringaCookieAlfresco=getPage(ALFRESCO_SECTION);	
	
	read3x7Cookie(NOME_COOKIE_GIOCATE_3X7);
	
	read3x7CookieCompleto3x7();
	
	boxVincita=getPage(BONUS_SECTION).split(SEPARATORE_GIOCATE);
	
	if(vettoreCompleto3x7.size()<7) {
		
		window.location.href = PROBLEM_PAGE;
		return;
	}
	
	if(vettore3x7.getSize()==0) {
		
		eraseSchedina();
		inizializeBonus();
		
		resetToStep1();
		
		
	} else {
		switch(stepAttuale) {
		default:	
		case '1':
			
			resetToStep1();
			
			break;
		case '3':

			create3x7Step3('quote',0);
			break;
		}
	} 

	return true;
	
}

function chiudiPagina() {
	
	eraseSchedina();

}

function eraseSchedina() {

	stepAttuale = 0;
	

	vettore3x7.removeAllElements();
	
	Cookies.erase(NOME_COOKIE_GIOCATE_3X7);
	Cookies.erase(NOME_COOKIE_SCHEDINA_3X7);
	
	
}


function resetItemDivs() {
	
	for(var i=0;i<vettore3x7.getSize();i++) {
	
		var elemento = vettore3x7.getElementAt(i);
		
		changeClassDiv(elemento[PRONOSTICO_ID],QUOTA_SEMPLICE);

	}
	
}

function showVincita() {
	
	var idBoxVincita = BOX_VINCITA_LITE;
	
	if(bonusAttivo()) {
		
		idBoxVincita = BOX_VINCITA_BONUS;
		
	}
	
	
		
	altercontent(ID_BOX_VINCITA,boxVincita[idBoxVincita]);
	showDiv(ID_BOX_VINCITA);
}
function hideAlert() {
	
	altercontent(DIV_ALERT,"");
	hideDiv(DIV_ALERT);
	showVincita();
	
}

function hideStep1Section() {
	

	if(getObject(DIV_3x7_EVENTI)&&getObject(DIV_3x7_BOTTONS)) {
		altercontent(DIV_3x7_EVENTI,"");
		hideDiv(DIV_3x7_EVENTI);
		altercontent(DIV_3x7_BOTTONS,"");
		hideDiv(DIV_3x7_BOTTONS);
	}
	
}

function showStep1Section() {
	
	altercontent(DIV_3x7_BOTTONS,creaBottoni("-1")+"<p id=\"neventi\"></p>");
	altercontent(DIV_3x7_EVENTI,"Stai giocando <em id=\"numGiocate\">7</em> partite su 7.");
	showDiv(DIV_3x7_EVENTI);
	
	showDiv(DIV_3x7_BOTTONS);
		
}

function switch3x7Item(id) {
	
	for(var i=0;i<vettore3x7.getSize();i++) {
	
		var elemento = vettore3x7.getElementAt(i);
		
		if(elemento[ID_ITEM] == id) { 
				
			
					changeClassDiv(elemento[PRONOSTICO_ID],QUOTA_SEMPLICE);
					
					vettore3x7.removeElementAt(i);

				break;
							
		}
	}
	
	
}


function showAlert(frase) {
	
	//var section = "<p class=\"fbnegativo\">";
	var section = "<p>";
	
	section += frase;
	
	altercontent(DIV_ALERT,section);
	
	showDiv(DIV_ALERT);
	
	altercontent(ID_BOX_VINCITA,"");
	hideDiv(ID_BOX_VINCITA);
	
	
}

function add3x7Item(id,gara,pronostico,quota,idPronostico,scommessaId) {
	
		
			switch3x7Item(id);			
			
			changeClassDiv(idPronostico,QUOTA_EVIDENZIATA);
			
						
			var elementoSchedina = new Array(7);
			elementoSchedina[ID_ITEM] = id;
			elementoSchedina[GARA_ITEM] = gara;
			elementoSchedina[PRONOSTICO_ITEM] = pronostico;
			elementoSchedina[QUOTA_ITEM] = quota;
			elementoSchedina[SELEZIONE_MULTIPLA] = NON_SELEZIONATO;
			elementoSchedina[PRONOSTICO_ID] = idPronostico;
			elementoSchedina[SCOMMESSA]=scommessaId;
			
			vettore3x7.addElement(elementoSchedina);
			
			saveCookie3x7(NOME_COOKIE_GIOCATE_3X7);
			
			create3x7Step1();
	
}

function add3x7ItemForIndex(id,gara,pronostico,quota,idPronostico,scommessaId,indexVector,oldPronostico) {
	
			switch3x7Item(id);

	
			var elementoSchedina = new Array(7);
			elementoSchedina[ID_ITEM] = id;
			elementoSchedina[GARA_ITEM] = gara;
			elementoSchedina[PRONOSTICO_ITEM] = pronostico;
			elementoSchedina[QUOTA_ITEM] = quota;
			elementoSchedina[SELEZIONE_MULTIPLA] = SELEZIONATO;
			elementoSchedina[PRONOSTICO_ID] = idPronostico;
			elementoSchedina[SCOMMESSA]=scommessaId;
			
			vettore3x7.insertElementAt(elementoSchedina,indexVector);

	
}

function add3x7ItemFromRandom(id,gara,pronostico,quota,idPronostico,scommessaId) {
	
			switch3x7Item(id);
	
			var elementoSchedina = new Array(7);
			elementoSchedina[ID_ITEM] = id;
			elementoSchedina[GARA_ITEM] = gara;
			elementoSchedina[PRONOSTICO_ITEM] = pronostico;
			elementoSchedina[QUOTA_ITEM] = quota;
			elementoSchedina[SELEZIONE_MULTIPLA] = SELEZIONATO;
			elementoSchedina[PRONOSTICO_ID] = idPronostico;
			elementoSchedina[SCOMMESSA]=scommessaId;
			
			vettore3x7.addElement(elementoSchedina);

	
}


function controlla3x7() {

	
	var arrayElementi = vettoreCompleto3x7.values();
	
	for(var i=0;i<7;i++){
		
		var elemento = arrayElementi[i];
		
		if(document.getElementsByName('selezioneEvento')[i].checked) {

			elemento[SC_SELEZIONE_MULTIPLA] = SELEZIONATO;
		}else {

			elemento[SC_SELEZIONE_MULTIPLA] = NON_SELEZIONATO;
			
			
		}	
	
	}
	
	vettoreCompleto3x7.put(elemento[SC_ID_ITEM],elemento);
	
	create3x7Step1();

}

function check3x7SectionStep1(index) {
	
	altercontent(index,"<input name=\"selezioneEvento\" type=\"checkbox\"  checked=\"checked\" onclick=\"javascript:controlla3x7()\"/>");

}

function create3x7Step1() {

	stepAttuale = 1;
	
	actualIndex = 0;
	
	var numeroElementi = vettore3x7.getSize();
	
	numeroElementiMultipla = 0;
	
	var vectorChecked = checkAllSection();
	
	quotaProduttoria = 1;
	
	eventoNegato = "NESSUNO";
	
	for(var i=0;i<numeroElementi;i++) {
		
		var elemento = vettore3x7.getElementAt(i);
			
		changeClassDiv(elemento[PRONOSTICO_ID],QUOTA_EVIDENZIATA);
		
		var elementoCompleto = vettoreCompleto3x7.get(elemento[ID_ITEM]);
		
		if(elementoCompleto[SC_SELEZIONE_MULTIPLA] == SELEZIONATO) {
			
				quotaProduttoria = quotaProduttoria * (elemento[QUOTA_ITEM]/100);
				
				elemento[SELEZIONE_MULTIPLA] = SELEZIONATO;
				var indiceElemento = vectorChecked.indexOf(elementoCompleto[SC_ID_ITEM]);
				vectorChecked.removeElementAt(indiceElemento);
							
		} else {
			elemento[SELEZIONE_MULTIPLA] = NON_SELEZIONATO;
		}

		
	}
	
	
	if(vectorChecked.getSize()>0) {
		
		eventoNegato = "TUTTI";
	}
	
	
	altercontent(DIV_3x7_GIOCATE,numeroElementiMultipla);		
	
	showVincita();
	
	calcolaVincita3x7("NESSUNO");

}

function calcolaVincita3x7(thisEventoNegato) {

	var totaleCosto = 3;
	var totaleVincita = 0;
	var totaleGiocate = 0;
	
	var moltiplicatorePuntate = 1;
	
	

	
	var vincitaMultipla = 0;
	
	
	
		
	var quotaMultipla = quotaProduttoria;
	
	vincitaMultipla = quotaMultipla*puntataMultipla;
	
	if(vincitaMultipla<=VINCITA_MASSIMA) { // è il caso?
		
		totaleCosto += puntataMultipla*1;
		totaleVincita += vincitaMultipla*1;
	}else {
		moltiplicatorePuntate = -2;
		totaleCosto += puntataMultipla*1;
		totaleVincita += vincitaMultipla*1;
	}

	
	if(document.getElementsByName(ID_SALDO_DIV)[0]) {
		var saldoAttuale = document.getElementsByName(ID_SALDO_DIV)[0].value;
	
		if(saldoAttuale<totaleCosto) {
			moltiplicatorePuntate = -3;
		}
	}
	
	if(thisEventoNegato!="NESSUNO") {
		moltiplicatorePuntate = -5;
	}
	
	if(numeroElementiMultipla<MIN_MULTIPLA) {
		moltiplicatorePuntate = -4;
	}

	if(vettore3x7.getSize()==0){
		totaleVincita = 0;
	}
	
	
	if(moltiplicatorePuntate > 0) {
		
		hideAlert();
		
		altercontent(TD_VINCITA_TOTALER,"&euro; "+formatAsMoney(totaleVincita));
			

		if(manageBonusDiv(numeroElementiMultipla,totaleVincita,true)>VINCITA_MASSIMA) {
			
			showAlert(ALERT_MAX_VINCITA);
			
		}

	} else {
		
		switch(moltiplicatorePuntate) {
			
		case -1:
			showAlert(ALERT_MIN_IMPORTO);
			break;
		case -2:
			showAlert(ALERT_MAX_VINCITA);
			
			break;
		case -3:
			showAlert(ALERT_NO_SALDO);
			break;
		case -4:
			showAlert(ALERT_MIN_3x7);
			break;
		case -5:
			showAlert(ALERT_COERENZA_3x7);
			break;
		}
		
	}
	
	
	return totaleVincita*moltiplicatorePuntate;

}

function negativizza3x7(obj) {
	
	var oggetto = getObject(obj);
	
	if(oggetto) {
		oggetto.className = oggetto.className+" "+NEG_CLASS;
	}
	
}


function deNegativizza3x7(obj) {
	
	var oggetto = getObject(obj);
	
	if(oggetto) {
		oggetto.className = remove(oggetto.className,NEG_CLASS);
	}
}




function resetToStep1() {
	
	
	
	var footer = getPage(FOOTER_SECTION);
	
	altercontent(DIV_3X7_FOOT,footer);
	
	if(!giocoChiuso()) {
		showDiv(DIV_PULSANTE);
	}else {
		hideDiv(DIV_PULSANTE);
	}
	showStep1Section();
	
	create3x7Step1();

}

function create3x7Step3(direzione,showQuote) {
	
		if(!document.getElementsByName(ID_CONTO_DIV)[0]) {
		
			var tagSearch = "?";
			
			if(document.location.search) {
				tagSearch = "&";
			}
			
			saveCookieCompleto3x7();
			window.location.href = window.location.href+tagSearch+TAG_LOGGATO;
			return;
		}
		
		stepAttuale = 3;
		
		var risposta = "";
		var schedinaCompleta = "";
	
		switch(direzione) {
			
		case 'stop': 
			
			mostraPronostici();
			break;
		
		case 'go': 
			
			
			var queryString = URL_API_3X7+crea3x7QueryString(); 
			
			
			risposta = getPage(queryString);
			
			if(risposta.indexOf('OK')<0)  {
				
				
				if(risposta.indexOf('Error report')>=0) {
					
					risposta = ALERT_GIOCATA;
				}
				
				if(risposta.indexOf('NOLOG')>=0) {
					var tagSearch = "?";
			
					if(document.location.search) {
						tagSearch = "&";
					}
					
					saveCookieCompleto3x7();
					
					window.location.href = window.location.href+tagSearch+TAG_LOGGATO;
					return;
				}
				
				
			} else {
				risposta = getPage(URL_API_REPORT_3X7);
			
				if(risposta.indexOf('Error report')>=0) {
					
					risposta = ALERT_RIEPILOGO;
				}
			}
			
			var vectorRisposta = risposta.split(SEPARATORE_GIOCATE);
			
			
			schedinaCompleta += vectorRisposta[0];
			
				
			altercontent(DIV_3X7_BODY,schedinaCompleta);
			
			eraseSchedina();
			
			var footSect = "";
			if(vectorRisposta.length>1) {
				footSect =vectorRisposta[1];
			}
			
			altercontent(DIV_3X7_FOOT,footSect);
				break;
			
		case 'cook': 
			if(calcolaVincita3x7(eventoNegato)<=0){
				break;
		
			}
				
		case 'quote':
		
	hideStep1Section();
		
			var footer_temp = "";
			footer_temp = getPage(FOOTER_SECTION3);
			altercontent(DIV_3X7_FOOT,footer_temp);
			
			schedinaCompleta += createHeadConferma3x7();
			
			showVincita();
			createMultiple3x7ForStep3(schedinaCompleta,showQuote);
			
			saveCookie3x7(NOME_COOKIE_GIOCATE_3X7);
			
			break;
		
		}


	
}				


function randomizeSchedina() {
	
	var quotaProduttoriaAttuale = 1;
	
	var elementiCompleti = vettoreCompleto3x7.values();
	
	
	for(var i=0;i<7;i++){
		
		var elemento = elementiCompleti[i];
		
		var quota = elemento[SC_QUOTA_ITEM1];
		var idPronostico = elemento[SC_PRONOSTICO_ID1];
		var labelPronostico = 	"1";
		
		var ran_number= Math.round(Math.random()*2);
		
		
		switch(ran_number) {
			
			case 0:
				quota = elemento[SC_QUOTA_ITEM1];
				idPronostico = elemento[SC_PRONOSTICO_ID1];
				labelPronostico = 	"1";
				break;
			case 1:
				quota = elemento[SC_QUOTA_ITEMX];
				idPronostico = elemento[SC_PRONOSTICO_IDX];
				labelPronostico = 	"X";
				break;
			case 2:
				quota = elemento[SC_QUOTA_ITEM2];
				idPronostico = elemento[SC_PRONOSTICO_ID2];
				labelPronostico = 	"2";
				break;
			
		}
		
		elemento[SC_SELEZIONE_MULTIPLA] = SELEZIONATO;
		
		vettoreCompleto3x7.put(elemento[SC_ID_ITEM],elemento);
		
		quotaProduttoriaAttuale = quotaProduttoriaAttuale * (quota/100);
		
		add3x7ItemFromRandom(elemento[SC_ID_ITEM],elemento[SC_GARA_ITEM],labelPronostico,quota,idPronostico,elemento[SC_SCOMMESSA]);
		
		
	}
	
	var actualIndex=0;
	
	
	while(manageBonusDiv(7,quotaProduttoriaAttuale*3,false)>VINCITA_MASSIMA&&actualIndex<7) {

		
		var elemento = vettore3x7.getElementAt(actualIndex);
		
		
		
		quotaProduttoriaAttuale = quotaProduttoriaAttuale*(100/elemento[QUOTA_ITEM]);
		
		
		var elementoCompleto = vettoreCompleto3x7.get(elemento[ID_ITEM]);		
		
		var quota = elementoCompleto[SC_QUOTA_ITEM1];
		var idPronostico = elementoCompleto[SC_PRONOSTICO_ID1];
		var labelPronostico = 	"1";
		
		if((elementoCompleto[SC_QUOTA_ITEM2]*1)<(quota*1)) {
			
			quota = elementoCompleto[SC_QUOTA_ITEM2];
			idPronostico = elementoCompleto[SC_PRONOSTICO_ID2];
			labelPronostico = 	"2";
			
		}
		
		if((elementoCompleto[SC_QUOTA_ITEMX]*1)<(quota*1)) {
			
			quota = elementoCompleto[SC_QUOTA_ITEMX];
			idPronostico = elementoCompleto[SC_PRONOSTICO_IDX];
			labelPronostico = 	"X";
			
		}
		
		
		add3x7ItemForIndex(elementoCompleto[SC_ID_ITEM],elementoCompleto[SC_GARA_ITEM],labelPronostico,quota,idPronostico,elementoCompleto[SC_SCOMMESSA],actualIndex);
		
		quotaProduttoriaAttuale = quotaProduttoriaAttuale * (quota/100);
		
		
		actualIndex++;
		
		
	}
	
	
	saveCookie3x7(NOME_COOKIE_GIOCATE_3X7);
	resetToStep1();
}


function crea3x7QueryString() {
	
	var sezioneMultipla = "";
			
	var scommesseInMultipla = 0;
	
	
	for(var i=0;i<vettore3x7.getSize();i++) {
		
		var elemento = vettore3x7.getElementAt(i);
				
			
		if(elemento[SELEZIONE_MULTIPLA] == SELEZIONATO) {
		
			var elementoInStringa = elemento[SCOMMESSA]+SEPARATORE_ITEM;
			
			elementoInStringa += elemento[PRONOSTICO_ID]+SEPARATORE_ITEM;
			
			elementoInStringa += elemento[QUOTA_ITEM]+SEPARATORE_ITEM;
						
			elementoInStringa += "0"+SEPARATORE_ITEM; 
			
			elementoInStringa += "0"
			
			if(scommesseInMultipla>0) {
				sezioneMultipla = sezioneMultipla+SEPARATORE_GIOCATE+elementoInStringa;
			}else {
				sezioneMultipla = elementoInStringa;
			}
			
			scommesseInMultipla++;
		}

		
	}
	
	
	
	var puntataMultipla100 = puntataMultipla*100; 
	
	sezioneMultipla+=SEPARATORE_COMPONENTI+puntataMultipla100;
		
	sezioneMultipla+=SEPARATORE_COMPONENTI+1;
	
	sezioneMultipla+=SEPARATORE_COMPONENTI+scommesseInMultipla;	
	
	
	var passBonusFisso = 0;
	
	var passPercBonusVariabile = 0;
	
	var passNumBonusVariabile = 0;
	
		
	if(importoBonusFisso>0) {
		passBonusFisso = importoBonusFisso;
	} else if(percBonusVariabile>0&&scommesseInMultipla>=numBonusVariabile) {
		
		passNumBonusVariabile = numBonusVariabile;
			
		passPercBonusVariabile = percBonusVariabile;		
	}
	
	sezioneMultipla += SEPARATORE_COMPONENTI+passBonusFisso;
	
	sezioneMultipla += SEPARATORE_COMPONENTI+passPercBonusVariabile;	
	
	sezioneMultipla += SEPARATORE_COMPONENTI+passNumBonusVariabile;
	
	sezioneMultipla += SEPARATORE_COMPONENTI+SPEDITA;
	
	return sezioneMultipla;
	
}

function createHeadScommessaDenied(numero) {

	
	var section = "<p class=\"fbnegativo\">Scommessa ";
		
	if(numeroScommesse>1) {
		section += numero+" di "+numeroScommesse+" ";
	}
	
	section += "non accettata.</p>";
	
	
	return section;

}

function createHeadConferma3x7() {

	
	var section = " <table><thead><tr><th></th>";
	section += "<th class=\"col6\">Il tuo pronostico</th>";
  	section += "</tr></thead><tbody> ";
		
	return section;

}

function resetGiocate() {

	getPage(URL_API_RESET_3X7);

}

function createMultiple3x7ForStep3(prefisso,showQuote) {
	
	
	var schedinaCompleta = prefisso;
		
	var sezioneMultipla ="";
			
	var totaleCosto = 0;
	var totaleVincita = 0;
	
	
	var numeroElementiMultipla = 0;
	
	var quotaProduttoria = 1;
	
	var eventoNegato = "NESSUNO";
	
	
	var isPair = false;
	for(var i=0;i<vettore3x7.getSize();i++) {
		
		var elemento = vettore3x7.getElementAt(i);
				
		if(elemento[SELEZIONE_MULTIPLA] == SELEZIONATO) {
		
			
			quotaProduttoria = quotaProduttoria * (elemento[QUOTA_ITEM]/100);
			
			numeroElementiMultipla++;
			
			sezioneMultipla += create3x7SingleSectionStep2(elemento,isPair,showQuote==1);
			
			if(isPair) {
				isPair = false;
			}else {
				isPair = true;
			}
			
		}
		
	}
	
			
		schedinaCompleta += sezioneMultipla;
		
		schedinaCompleta +="</tbody></table>";
 
		if(showQuote==1) {
			schedinaCompleta +="<p id=\"mostraLeQuote\"><a href=\"javascript:create3x7Step3('quote',0);\" >Mostra i pronostici</a></p>";
		} else {
			schedinaCompleta +="<p id=\"mostraLeQuote\"><a href=\"javascript:create3x7Step3('quote',1);\" >Mostra le quote</a></p>";
		}
	
 		
		totaleCosto += puntataMultipla;
		
		totaleVincita += puntataMultipla*quotaProduttoria;
		
		
	
		altercontent(DIV_3X7_BODY,schedinaCompleta);
		
		
		altercontent(TD_VINCITA_TOTALER,"&euro; "+formatAsMoney(totaleVincita));		
		
		manageBonusDiv(numeroElementiMultipla,totaleVincita,true);
		

}


function create3x7SingleSectionStep2(elemento,isPair,showQuote) {

	
	
	var quotaVisibile ="";
	var section = "<tr";
	
	if(isPair) {
		section += " class=\"pair\"";
	}
	
	section += ">";
	section += "<td class=\"col2\">"+elemento[GARA_ITEM]+"</td>";
	
	if(showQuote) {
		quotaVisibile += " (quota: "+formatAsMoney(elemento[QUOTA_ITEM]/100)+")";
	}
	section +="<td class=\"col6\">"+elemento[PRONOSTICO_ITEM]+quotaVisibile+"</td>";
  	
	section += "</tr>";
	
	return section;
	

}


function formatAsMoney(mnt) {
	
	mnt -= 0;
	mnt = (Math.round(mnt*100))/100;
	
	var rounded = (mnt == Math.floor(mnt)) ? mnt + '.00' 
	: ( (mnt*10 == Math.floor(mnt*10)) ? 
		mnt + '0' : mnt);
	
	
	var intalianizzato = (" "+rounded).replace('.', ',');
	
	return addCommas(intalianizzato);
	
	
}

function formatAsPerc(mnt) {
	
	mnt -= 0;
	
	mnt = Math.round(mnt);
	
	var rounded = (mnt == Math.floor(mnt)) ? mnt  
	: ( (mnt*10 == Math.floor(mnt*10)) ? 
		mnt + '0' : mnt);
	
	
	var intalianizzato = (" "+rounded).replace('.', ',');
	
	return intalianizzato;
	
	
}
function addCommas( strValue ) {
	
	var objRegExp  = new RegExp('(-?[0-9]+)([0-9]{3})');
	
	while(objRegExp.test(strValue)) {
		
		strValue = strValue.replace(objRegExp, '$1.$2');
	}
	return strValue;
}

function bonusAttivo() {
	
	
	return (numBonusVariabile>0&&percBonusVariabile>0)||importoBonusFisso>0;
}
function inizializeBonus() {
	
	 if(getUrlParameter(PAR_BONUS_VAR_NUM)&&
				getUrlParameter(PAR_BONUS_VAR_PERC)) {
		
		numBonusVariabile = getUrlParameter(PAR_BONUS_VAR_NUM);
		percBonusVariabile = getUrlParameter(PAR_BONUS_VAR_PERC);
					
	} else if(getUrlParameter(PAR_BONUS_VAR_PERC)) {
			
		importoBonusFisso = getUrlParameter(PAR_BONUS_VAR_PERC);
		
	}
	
	if(document.getElementsByName(ID_BONUS_FISSO)[0]) {
		
		importoBonusFisso = document.getElementsByName(ID_BONUS_FISSO)[0].value;
		
	} else if(document.getElementsByName(ID_BONUS_VAR_NUM)[0]&&
				document.getElementsByName(ID_BONUS_VAR_PERC)[0]) {
		
		numBonusVariabile = document.getElementsByName(ID_BONUS_VAR_NUM)[0].value;
		percBonusVariabile = document.getElementsByName(ID_BONUS_VAR_PERC)[0].value;
					
	}
}

function manageBonusDiv(totaleGiocate,totaleVincita,showDiv) {

	var vincitaComplessiva = totaleVincita;
	var isBonusAttivo = bonusAttivo();
	var divVincitaTotale = formatAsMoney(totaleVincita);
	var divBonus = '0';
	var divTipoBonus = 'Bonus ';
	
	
	if(isBonusAttivo&&quotaProduttoria>SOGLIA_QUOTA_BONUS) {
		
		var localBonusFisso = VINCITA_MASSIMA - totaleVincita;
		
		if(localBonusFisso>0) { 
			var importoBonus = localBonusFisso*1;
			vincitaComplessiva = totaleVincita+importoBonus;
			
			divVincitaTotale = formatAsMoney(vincitaComplessiva);
			divBonus = formatAsMoney(importoBonus);
			divTipoBonus += LABEL_BONUS_FISSO;
			
			if(stepAttuale == 3) {
				
				var stringaBonusFisso = divBonus.replace(',', '.');
				
				var arrayBonus = stringaBonusFisso.split(".");
				
				stringaBonusFisso = " ";
				
				for(var i = 0; i<arrayBonus.length;i++) {
					
					stringaBonusFisso+=arrayBonus[i];		
				}
				
							
					importoBonusFisso = trim(stringaBonusFisso);
					
								} 
	
		} 

	} else {
		
	if(importoBonusFisso>0) { 
		var importoBonus = importoBonusFisso*1;
		vincitaComplessiva = totaleVincita+importoBonus;
		
		divVincitaTotale = formatAsMoney(vincitaComplessiva);
		divBonus = formatAsMoney(importoBonus);
		divTipoBonus += LABEL_BONUS_FISSO;
		
		} else 
			
			if(numBonusVariabile>0&&percBonusVariabile>0){ 
				
		if(numBonusVariabile==1) { 
			
			divTipoBonus += formatAsPerc(percBonusVariabile)+'%';
		
			var importoBonus = totaleVincita*(percBonusVariabile/10000);
			vincitaComplessiva = totaleVincita+importoBonus;
		
			divVincitaTotale = formatAsMoney(vincitaComplessiva);
			divBonus =formatAsMoney(importoBonus);
			
			
		}else if(totaleGiocate >= numBonusVariabile){
			
			
			
			var passiBonus = totaleGiocate - numBonusVariabile + 1;
			
			
			var finalImportoBonusVariabile = Math.pow((1 + percBonusVariabile/10000), passiBonus);
			
			var percFinale =(finalImportoBonusVariabile -1)*100;
			
			divTipoBonus += formatAsPerc(percFinale)+'%';
			
			
			vincitaComplessiva = totaleVincita*finalImportoBonusVariabile;
		
			var importoBonus = vincitaComplessiva - totaleVincita*1;
			
			divVincitaTotale = formatAsMoney(vincitaComplessiva);
			
			divBonus =formatAsMoney(importoBonus);
			
		}
	
	} 
	}
	

	
	if(showDiv&&isBonusAttivo) {
		altercontent(DIV_VINCITA,"&euro; "+formatAsMoney(totaleVincita));
		altercontent(TD_VINCITA_TOTALER,"&euro; "+divVincitaTotale);
		altercontent(DIV_BONUS,"&euro; "+divBonus);
		altercontent(DIV_TIPO_BONUS,divTipoBonus);
	}
	
	return vincitaComplessiva;
}
		
	
function giocoChiuso() {
	
	var giocoChiusoEnd = "";
	if(document.getElementsByName(DIV_GIOCO_CHIUSO)[0]) {
		giocoChiusoEnd = document.getElementsByName(DIV_GIOCO_CHIUSO)[0].value;
	}
	
	return giocoChiusoEnd.length>2;	
}

function saveCookie3x7(name) {
	
	var cookieBody = serializza3x7();
	//Cookies.create(name,cookieBody,1);
	Cookies.create(name,cookieBody,0.01);
	
}

function saveCookieCompleto3x7() {
	
	var cookieBody = serializzaCompleta3x7();
	Cookies.create(NOME_COOKIE_SCHEDINA_3X7,cookieBody,1);
	
}
function deserializzaCookie3x7(items) {
	
	var vettoreElementi = items[ITEM_POS].split(SEPARATORE_GIOCATE);
	
	stepAttuale = items[STEP_POS];
	scommessaAttuale = items[SCOM_POS];
	actualIndex = items[INDEX_POS];
	importoBonusFisso = items[IMPBONUS_POS];
	percBonusVariabile = items[PERBONUS_POS];
	numBonusVariabile = items[NUMBONUS_POS];
	
	
	for(var i=0;i<vettoreElementi.length;i++) {
		
		var elementoSchedina=vettoreElementi[i].split(SEPARATORE_ITEM);
		
		vettore3x7.addElement(elementoSchedina);
		
	}
	
}

function read3x7CookieCompleto3x7() {
	
	var vettoreElementi = Cookies[NOME_COOKIE_SCHEDINA_3X7].split(SEPARATORE_GIOCATE);
	
	
	for(var i=0;i<vettoreElementi.length;i++) {
		
		var elementoSchedina=vettoreElementi[i].split(SEPARATORE_ITEM);
		
		vettoreCompleto3x7.put(elementoSchedina[SC_ID_ITEM],elementoSchedina);
		
	}
	
}


function read3x7Cookie(name) {
	
	
	if(Cookies[name]&&Cookies[name]!="_") {
		
		var items = Cookies[name].split(SEPARATORE_COMPONENTI);
		
		deserializzaCookie3x7(items);
	
	} 
		
	
}



function serializza3x7(){
	
	var arrayString = "";
	
	for (var i=0;i<vettore3x7.getSize();i++) {
		
		var elementoSchedina = vettore3x7.getElementAt(i);
		
		var elementoInStringa;
		
		for(var j=0;j<elementoSchedina.length;j++) {
			
			if(j>0) {
				elementoInStringa = elementoInStringa+SEPARATORE_ITEM+elementoSchedina[j];
			}else {
				elementoInStringa = elementoSchedina[j];
			}
			
		}
		
		
		if(i>0) {
			arrayString = arrayString+SEPARATORE_GIOCATE+elementoInStringa;
		}else {
			arrayString = elementoInStringa;
		}
		
	}
	
	arrayString+=SEPARATORE_COMPONENTI+stepAttuale;
	
	arrayString+=SEPARATORE_COMPONENTI+scommessaAttuale;
	
	arrayString+=SEPARATORE_COMPONENTI+actualIndex;
	
	arrayString+=SEPARATORE_COMPONENTI+importoBonusFisso;
	
	arrayString+=SEPARATORE_COMPONENTI+percBonusVariabile;
	
	arrayString+=SEPARATORE_COMPONENTI+numBonusVariabile;
	
	return arrayString;
}

function serializzaCompleta3x7(){
	
	var arrayString = "";
	
	var arrayElementi = vettoreCompleto3x7.values();
	
	for (var i=0;i<7;i++) {
		
		var elementoSchedina = arrayElementi[i];
		
		var elementoInStringa;
		
		for(var j=0;j<elementoSchedina.length;j++) {
			
			if(j>0) {
				elementoInStringa = elementoInStringa+SEPARATORE_ITEM+elementoSchedina[j];
			}else {
				elementoInStringa = elementoSchedina[j];
			}
			
		}
		
		
		if(i>0) {
			arrayString = arrayString+SEPARATORE_GIOCATE+elementoInStringa;
		}else {
			arrayString = elementoInStringa;
		}
		
	}
	

	
	
	return arrayString;
}

