function port(ruolo, nome, valore)
{
this.ruolo = ruolo;
this.nome = nome;
this.valore = valore;
}

function cent(ruolo, nome, valore)
{
this.ruolo = ruolo;
this.nome = nome;
this.valore = valore;
}

function dife(ruolo, nome, valore)
{
this.ruolo = ruolo;
this.nome = nome;
this.valore = valore;
}

function atta(ruolo, nome, valore)
{
this.ruolo = ruolo;
this.nome = nome;
this.valore = valore;
}

function GeneraIntestazioneModuli(cFsq, cGio, fname)
// Questo codice genera l'intestazione per la scelta della fantasquadra
// e della giornata
// Utilizza MaxA definito nel SerieADati
{

	var arrF = new Object();
	arrF = arrFantasquadre;
	document.write("<form name='frmIF' id='frmIF' action='" + fname + ".php' method='get'>")
	//document.write("<table width='300px' border='0' cellspacing='0' cellpadding='0'>")
	//document.write("<tr><td width='auto' class='t-xxsB'><nobr>Fantasquadra:&nbsp;<select name='Fsq' class='t-xxs' id='Fsq'>")
	var i;
	for (i = 1; i < arrF.length; i++) {
		document.write("<option value='" + arrF[i].ID + "'");
		if (arrF[i].ID == cFsq) {
			document.write(" selected");
			idxFsq = i;
		}
		//document.write(">" + arrF[i].Nome + "</option>");
	}
	//document.write("</select></nobr></td>")

	if (cGio == "" || parseInt(cGio) == 0) cGio = 1;
	var attributes = disabilitaGiornata ? "disabled" : "";
	//document.write("<td width='auto' class='t-xxsB'><nobr>&nbsp;&nbsp;Giornata:&nbsp;<select name='Gio' class='t-xxs' id='Gio' " + attributes + ">");
	for (i = 1; i <= MaxA; i++) {
		document.write("<option value='" + i + "'");
		if (i == cGio) document.write(" selected");
		//document.write(">" + i + "</option>");
	}
	//document.write("</select></nobr></td>");

	//document.write("<td width='auto' class='t-xxsB'>&nbsp;&nbsp;<input name='Invia' type='submit' class='t-xxs' id='Invia' value='  Vai  '></td>");
	//document.write("</tr></table></form>");
}



function GeneraTabellaFormazioneCPU()
{
var por,porv,porr,dif,difv,difr,cen,cenv,cenr,att,attv,attr
var contap=0
var contad=0
var contac=0
var contaa=0
portieri = new Array(); 
difensori = new Array(); 
centrocampisti = new Array(); 
attaccanti = new Array(); 

	var g;
	for (g=0; g < arrInvioFormazione.length; g++) {
		var gg = arrInvioFormazione[g];
		if (gg.IDSquadra != cFsq) continue;

		//arrRosa.push(g);

		
		var dati = gg.Dati.split("%");

mvt=0;
fmt=0;		
mvu=0;
fmu=0;
		

		// Ruolo
if (ruoli[gg.Ruolo]=="P"){

		var nomeAvversaria = "---";
		var inTrasferta = false;
		if (gg.IDSquadraDiA < incontraInA.length) {
			var avversaria = incontraInA[gg.IDSquadraDiA][cGio];
			inTrasferta = avversaria >= 100;
			nomeAvversaria = eval("xa" + (avversaria % 100));
		}
if (dati[0]=="---" || dati[0]=="sv/ng"){
dati[0]=0
}
if (dati[2]=="---" || dati[2]=="sv/ng"){
dati[2]=0
}
if (dati[4]=="---" || dati[4]=="sv/ng"){
dati[4]=0
}
if (dati[6]=="---" || dati[6]=="sv/ng"){
dati[6]=0
}

		porr=ruoli[gg.Ruolo]
		por=eval(gg.Nome)
		if (PerCento(gg.NomeCode)==undefined || filtro2(filtro(PerCento(gg.NomeCode)))< 50){

		porv= 0
		portieri[contap]=new port(porr, por, porv)
		} else {
		porv= dati[0]*40+dati[2]*50+dati[4]*4+dati[6]*6+(inTrasferta ? 0 : 20)
		portieri[contap]=new port(porr, por, porv)
		}
		contap++;
}


if (ruoli[gg.Ruolo]=="D"){

		var nomeAvversaria = "---";
		var inTrasferta = false;
		if (gg.IDSquadraDiA < incontraInA.length) {
			var avversaria = incontraInA[gg.IDSquadraDiA][cGio];
			inTrasferta = avversaria >= 100;
			nomeAvversaria = eval("xa" + (avversaria % 100));
		}
		
if (dati[0]=="---" || dati[0]=="sv/ng"){
dati[0]=0
}
if (dati[2]=="---" || dati[2]=="sv/ng"){
dati[2]=0
}
if (dati[4]=="---" || dati[4]=="sv/ng"){
dati[4]=0
}
if (dati[6]=="---" || dati[6]=="sv/ng"){
dati[6]=0
}

		difr=ruoli[gg.Ruolo]
		dif=eval(gg.Nome)
		if (PerCento(gg.NomeCode)==undefined || filtro2(filtro(PerCento(gg.NomeCode)))< 50){
		difv= 0
		difensori[contad]= new dife(difr, dif, difv)

		} else {


		difv= dati[0]*40+dati[2]*50+dati[4]*4+dati[6]*6+(inTrasferta ? 0 : 20)
		difensori[contad]= new dife(difr, dif, difv)
		}
		contad++;
}

if (ruoli[gg.Ruolo]=="C"){

		var nomeAvversaria = "---";
		var inTrasferta = false;
		if (gg.IDSquadraDiA < incontraInA.length) {
			var avversaria = incontraInA[gg.IDSquadraDiA][cGio];
			inTrasferta = avversaria >= 100;
			nomeAvversaria = eval("xa" + (avversaria % 100));
		}

if (dati[0]=="---" || dati[0]=="sv/ng"){
dati[0]=0
}
if (dati[2]=="---" || dati[2]=="sv/ng"){
dati[2]=0
}
if (dati[4]=="---" || dati[4]=="sv/ng"){
dati[4]=0
}
if (dati[6]=="---" || dati[6]=="sv/ng"){
dati[6]=0
}

		cenr=ruoli[gg.Ruolo]
		cen=eval(gg.Nome)
		if (PerCento(gg.NomeCode)==undefined || filtro2(filtro(PerCento(gg.NomeCode)))< 50){
		cenv=0
		centrocampisti[contac]= new cent(cenr, cen, cenv)
		} else {
		cenv= dati[0]*40+dati[2]*50+dati[4]*4+dati[6]*6+(inTrasferta ? 0 : 20)
		centrocampisti[contac]= new cent(cenr, cen, cenv)
		}
		contac++;
}


if (ruoli[gg.Ruolo]=="A"){

		var nomeAvversaria = "---";
		var inTrasferta = false;
		if (gg.IDSquadraDiA < incontraInA.length) {
			var avversaria = incontraInA[gg.IDSquadraDiA][cGio];
			inTrasferta = avversaria >= 100;
			nomeAvversaria = eval("xa" + (avversaria % 100));
		}

if (dati[0]=="---" || dati[0]=="sv/ng"){
dati[0]=0
}
if (dati[2]=="---" || dati[2]=="sv/ng"){
dati[2]=0
}
if (dati[4]=="---" || dati[4]=="sv/ng"){
dati[4]=0
}
if (dati[6]=="---" || dati[6]=="sv/ng"){
dati[6]=0
}
		attr=ruoli[gg.Ruolo]
		att=eval(gg.Nome)
		if (PerCento(gg.NomeCode)==undefined || filtro2(filtro(PerCento(gg.NomeCode)))< 50){
		attv=0
		attaccanti[contaa]= new atta(attr, att, attv)
		} else {
		attv= dati[0]*40+dati[2]*50+dati[4]*4+dati[6]*6+(inTrasferta ? 0 : 20)
		attaccanti[contaa]= new atta(attr, att, attv)
		}
		contaa++;
}


}




portieri.sort(function(a,b){return b.valore - a.valore;});

difensori.sort(function(a,b){return b.valore - a.valore;});

centrocampisti.sort(function(a,b){return b.valore - a.valore;});

attaccanti.sort(function(a,b){return b.valore - a.valore;});


parzform=0
topmod=0
topform=0
var modamm = new Object()
var w
modamm = moduliAmmessi
for (w=0;w<modamm.length;w++) {

for (i=0; i<modamm[w][1]; i++) {
parzform=parzform+portieri[i].valore;
}
for (i=0; i<modamm[w][2]; i++) {
parzform=parzform+difensori[i].valore;
}
for (i=0; i<modamm[w][3]; i++) {
parzform=parzform+centrocampisti[i].valore;
}
for (i=0; i<modamm[w][4]; i++) {
parzform=parzform+attaccanti[i].valore;
}

if (parzform>topform){
topform=parzform;
topmod=w;
parzform=0
}
parzform=0
}


for (i=0; i<modamm[topmod][1]; i++) {
for (g = 0; g < arrInvioFormazione.length; g++) {
var gg = arrInvioFormazione[g];
if (portieri[i].nome==eval(gg.Nome) && cFsq==gg.IDSquadra){
ClickGiocatoreRosa(g)
}
}
}
for (i=0; i<modamm[topmod][2]; i++) {
for (g = 0; g < arrInvioFormazione.length; g++) {
var gg = arrInvioFormazione[g]
if (difensori[i].nome == eval(gg.Nome) && cFsq==gg.IDSquadra) {
ClickGiocatoreRosa(g)
}
}
}
for (i=0; i<modamm[topmod][3]; i++) {
for (g = 0; g < arrInvioFormazione.length; g++) {
var gg = arrInvioFormazione[g]
if (centrocampisti[i].nome == eval(gg.Nome) && cFsq==gg.IDSquadra) {
ClickGiocatoreRosa(g)
}
}
}
for (i=0; i<modamm[topmod][4]; i++) {
for (g = 0; g < arrInvioFormazione.length; g++) {
var gg = arrInvioFormazione[g]
if (attaccanti[i].nome == eval(gg.Nome) && cFsq==gg.IDSquadra) {
ClickGiocatoreRosa(g)
}
}
}



}






//elimina I e : dalla stringa in input
function filtro(str) {
	re = /I|:|\./g;
	// remove special characters like "$" and "," etc...
	return str.replace(re, "");


}

//restituisce i caratteri prima del % dalla stringa in input

function filtro2(str) {

var stringa="";
for (i=0;i<str.length;i++) {
if (str.charAt(i)!="%") {
stringa=stringa+str.charAt(i)
} else {
break;
}
}
return stringa;
}

