var playerDetails;
var playerclone;
var team1 = [];
var team2 = [];
var combinations = [[1, 3, 3, 4], [1, 2, 4, 4], [1, 4, 1, 5], [1, 4, 2, 4], [1, 4, 3, 3], [1, 5, 1, 4], [1, 5, 2, 3], [1, 3, 2, 5], [2, 3, 2, 4], [2, 4, 2, 3]];
var teamArray = [];
var imageUnknown ="https://d13ir53smqqeyp.cloudfront.net/player-images/football-player-image.png";
var wk = {
'Team1': [],
'Team2': [],
};
var batsman = {
'Team1': [],
'Team2': [],
};
var allrounder = {
'Team1': [],
'Team2': [],
};
var bowler = {
'Team1': [],
'Team2': [],
};
var removedPlayers = [];
var team1Name = 'CSK';
var team2Name = 'SRH';
// var stadium = 'Sheikh Zayed Stadium';
// var place = 'Abu Dhabi';
var stadium = 'Dubai International stadium';
var place ='Dubai'
var date ='2-10-2020 (2nd oct)'
$(() => {
$('#team1').html(team1Name);
$('#team2').html(team2Name);
$('#stadium').html(stadium);
$('#place').html(place);
$('#date').html(date);
playerDetails = [{"playerName":"M Dhoni","team":"CSK-WK","pt":"108","credit":"9.5","id":0},{"playerName":"J Bairstow","team":"SRH-WK","pt":"191","credit":"9.5","id":1},{"playerName":"N Jagadeesan","team":"CSK-WK","pt":"0","credit":"8","id":2},{"playerName":"W Saha","team":"SRH-WK","pt":"45","credit":"8","id":3},{"playerName":"S Goswami","team":"SRH-WK","pt":"0","credit":"7.5","id":4},{"playerName":"D Warner","team":"SRH-BAT","pt":"119","credit":"10.5","id":5},{"playerName":"S Watson","team":"CSK-BAT","pt":"84","credit":"9.5","id":6},{"playerName":"K Williamson","team":"SRH-BAT","pt":"50","credit":"9.5","id":7},{"playerName":"F d Plessis","team":"CSK-BAT","pt":"258","credit":"9","id":8},{"playerName":"A Rayudu","team":"CSK-BAT","pt":"95","credit":"9","id":9},{"playerName":"M Pandey","team":"SRH-BAT","pt":"134","credit":"9","id":10},{"playerName":"K Jadhav","team":"CSK-BAT","pt":"80","credit":"8.5","id":11},{"playerName":"M Vijay","team":"CSK-BAT","pt":"46","credit":"8.5","id":12},{"playerName":"R Gaikwad","team":"CSK-BAT","pt":"13","credit":"8","id":13},{"playerName":"A Samad","team":"SRH-BAT","pt":"27","credit":"8","id":14},{"playerName":"P Garg","team":"SRH-BAT","pt":"33","credit":"8","id":15},{"playerName":"V Singh","team":"SRH-BAT","pt":"0","credit":"8","id":16},{"playerName":"B Sandeep","team":"SRH-BAT","pt":"0","credit":"8","id":17},{"playerName":"Dwayne-Bravo","team":"CSK-ALL","pt":"0","credit":"9","id":18},{"playerName":"R Jadeja","team":"CSK-ALL","pt":"78","credit":"9","id":19},{"playerName":"M Nabi","team":"SRH-ALL","pt":"19","credit":"9","id":20},{"playerName":"S Curran","team":"CSK-ALL","pt":"199","credit":"8.5","id":21},{"playerName":"M Santner","team":"CSK-ALL","pt":"0","credit":"8.5","id":22},{"playerName":"V Shankar","team":"SRH-ALL","pt":"27","credit":"8.5","id":23},{"playerName":"J Holder","team":"SRH-ALL","pt":"0","credit":"8.5","id":24},{"playerName":"A Sharma","team":"SRH-ALL","pt":"48","credit":"8","id":25},{"playerName":"F Allen","team":"SRH-ALL","pt":"0","credit":"8","id":26},{"playerName":"S Yadav","team":"SRH-ALL","pt":"0","credit":"7.5","id":27},{"playerName":"R Khan","team":"SRH-BWL","pt":"133","credit":"9.5","id":28},{"playerName":"I Tahir","team":"CSK-BWL","pt":"0","credit":"9","id":29},{"playerName":"B Kumar","team":"SRH-BWL","pt":"60","credit":"9","id":30},{"playerName":"L Ngidi","team":"CSK-BWL","pt":"100","credit":"8.5","id":31},{"playerName":"S Thakur","team":"CSK-BWL","pt":"0","credit":"8.5","id":32},{"playerName":"D Chahar","team":"CSK-BWL","pt":"101","credit":"8.5","id":33},{"playerName":"J Hazlewood","team":"CSK-BWL","pt":"4","credit":"8.5","id":34},{"playerName":"P Chawla","team":"CSK-BWL","pt":"108","credit":"8.5","id":35},{"playerName":"S Kaul","team":"SRH-BWL","pt":"0","credit":"8.5","id":36},{"playerName":"K Asif","team":"CSK-BWL","pt":"0","credit":"8","id":37},{"playerName":"R S Kishore","team":"CSK-BWL","pt":"0","credit":"8","id":38},{"playerName":"K Sharma","team":"CSK-BWL","pt":"0","credit":"8","id":39},{"playerName":"T Natarajan","team":"SRH-BWL","pt":"88","credit":"8","id":40},{"playerName":"K Ahmed","team":"SRH-BWL","pt":"52","credit":"8","id":41},{"playerName":"B Thampi","team":"SRH-BWL","pt":"0","credit":"8","id":42},{"playerName":"B Stanlake","team":"SRH-BWL","pt":"0","credit":"8","id":43},{"playerName":"S Sharma","team":"SRH-BWL","pt":"12","credit":"8","id":44},{"playerName":"S Nadeem","team":"SRH-BWL","pt":"0","credit":"8","id":45},{"playerName":"M Kumar","team":"CSK-BWL","pt":"0","credit":"7.5","id":46}];
playerDetails.forEach((elm , nidex )=>{
elm.inorout = 0;
elm.id = nidex
})
playerclone = [...playerDetails];
listCombo(combinations);
listAllPlayers(playerclone);
});
function listCombo(combo) {
$('#selCombo').html('');
combo.forEach((c, i) => {
var opt = ` `;
$('#selCombo').append(opt);
})
}
function delPlayerFromAllPlayers(id, inout) {
console.log(id);
pid = playerclone.findIndex(x => x.id === parseInt(id));
if(pid !== -1){
removedPlayers.push(playerclone[pid])
playerclone.splice(pid, 1);
}
$('#play-'+id).remove();
if(removedPlayers.length >= 1){
$('#undo').removeClass('event-none');
}
}
function undo(){
if(removedPlayers.length >= 1){
playerclone.push(removedPlayers.pop());
console.log(playerclone);
listAllPlayers(playerclone);
}else{
$('#undo').addClass('event-none')
}
}
function selectplayer(id, inout) {
if ($('#play-' + id).hasClass('selected')) {
$('#play-' + id).removeClass('selected');
$('#play-' + id).addClass('b-bot');
} else {
$('#play-' + id).addClass('selected');
$('#play-' + id).removeClass('b-bot');
}
// playerclone.splice((parseInt(id) - 1), 1);
}
function reload() {
playerclone = [...playerDetails];
// listAllPlayers(playerclone);
listAllPlayers(playerclone);
}
function listAllPlayers(pl) {
$('#allPlayers').html('');
pl.forEach(el => {
// var bg='';
// if(el.team.includes(team1Name)){
// bg='bg-danger text-white';
// }else{
// bg='bg-dark text-white';
// }
var tableteam = `
`+ el.pt + `
`+ el.credit + `
`;
$('#allPlayers').append(tableteam);
})
}
function GenerateTeam() {
teamArray = [];
var s = $('.sel-combo').val();
$('#teamGenerator').html('');
console.log(s);
playerseperateByTeam(playerclone);
setTimeout(()=>{
generatingTeam(parseInt(s));
},100)
}
function generatingTeam(s) {
let Teams = [];
//
combinationsingle = combinations[parseInt(s)];
var wkLength = combinationsingle[0];
var btLength = combinationsingle[1];
var allRLength = combinationsingle[2];
var bwlLength = combinationsingle[3];
var Teamsplitter = {
wkteam: [],
btteam: [],
alteam: [],
bwlteam: [],
}
console.log(wkLength, btLength, allRLength, bwlLength)
Teamsplitter.wkteam = lengthcheck(wk, wkLength);
Teamsplitter.btteam = lengthcheck(batsman, btLength);
Teamsplitter.alteam = lengthcheck(allrounder, allRLength);
Teamsplitter.bwlteam = lengthcheck(bowler, bwlLength);
console.log(Teamsplitter);
Teamsplitter.wkteam.forEach((wkp, wi) => {
Teamsplitter.btteam.forEach((bat, bi) => {
Teamsplitter.alteam.forEach((all, ai) => {
Teamsplitter.bwlteam.forEach((bwl, bwi) => {
var t = [];
t = {
totalcredit: 0,
team: [...wkp, ...bat, ...all, ...bwl]};
console.log(t.team);
let tot = 0;
t.team.forEach(elm => {
tot = tot + parseFloat(elm.credit)
});
if (tot <= 100 && t.team.length === 11) {
console.log(tot);
t.totalcredit = tot;
teamArray.push(t);
}
})
})
})
})
teamArray.sort(sortByPropertyHighestFirst('credit'));
$('#teamCount').html(teamArray.length);
teamArray.forEach(t =>{
console.log(t);
var bathtml =``
var allhtml =``;
var bwlhtml =``;
var wkhtml = ``;
t.team.forEach((tm, a )=>{
var bg = '';
if(tm.team.includes(team1Name)){
bg ="bg-dark text-white"
}
if(tm.team.includes('-WK')){
wkhtml += `
`;
}
else if(tm.team.includes('-BAT')){
bathtml += `
`;
}
else if(tm.team.includes('-ALL')){
allhtml += `
`;
}
else if(tm.team.includes('-BWL')){
bwlhtml += `
`;
}
console.log(t.team.length, a+1)
if(t.team.length === (a+1) ){
console.log('append')
appendtohtml(wkhtml, bathtml, allhtml, bwlhtml, t.totalcredit);
}
});
});
}
function appendtohtml(wk, bat, all, bwl, credit){
var htmltext = `
`;
$('#teamGenerator').append(htmltext);
}
function playerseperateByTeam(playersData) {
wk = {
'Team1': [],
'Team2': [],
};
batsman = {
'Team1': [],
'Team2': [],
};
allrounder = {
'Team1': [],
'Team2': [],
};
bowler = {
'Team1': [],
'Team2': [],
};
playersData.forEach((val, ind) => {
// console.log(val.team);
if (val.team.includes(team1Name)) {
team1.push(val);
} else {
team2.push(val);
}
if (val.team.includes('-WK')) {
if (val.team.includes(team2Name)) {
wk['Team1'].push(val);
} else {
wk['Team2'].push(val);
}
} else if (val.team.includes('-BAT')) {
if (val.team.includes(team1Name)) {
batsman['Team1'].push(val);
} else {
batsman['Team2'].push(val);
}
} else if (val.team.includes('-ALL')) {
if (val.team.includes(team1Name)) {
allrounder['Team1'].push(val);
} else {
allrounder['Team2'].push(val);
}
} else if (val.team.includes('BWL')) {
if (val.team.includes(team1Name)) {
bowler['Team1'].push(val);
} else {
bowler['Team2'].push(val);
}
}
});
wk['Team1']= wk['Team1'].sort(sortByPropertyHighestFirst('credit'));
wk['Team2'] = wk['Team2'].sort(sortByPropertyHighestFirst('credit'));
bowler['Team1'] = bowler['Team1'].sort(sortByPropertyHighestFirst('credit'));
bowler['Team1'] = bowler['Team1'].sort(sortByPropertyHighestFirst('credit'));
batsman['Team1'] = batsman['Team1'].sort(sortByPropertyHighestFirst('credit'));
batsman['Team1'] = batsman['Team1'].sort(sortByPropertyHighestFirst('credit'));
allrounder['Team1'] = allrounder['Team1'].sort(sortByPropertyHighestFirst('credit'));
allrounder['Team1'] = allrounder['Team1'].sort(sortByPropertyHighestFirst('credit'));
}
// sort largest to small function
function sortByPropertyHighestFirst(property) {
return function (a, b) {
if (a[property] < b[property])
return 1;
else if (a[property] > b[property])
return -1;
return 0;
}
}
// sort small to largest function
function sortByPropertySmallestFirst(property) {
return function (a, b) {
if (a[property] > b[property])
return 1;
else if (a[property] < b[property])
return -1;
return 0;
}
}
function lengthcheck(player, length) {
console.log(length);
if (length == 1) {
return lengthOne(player)
}
if (length == 2) {
return lengthTwo(player)
}
if (length == 3) {
return lengthThree(player)
}
if (length == 4) {
return lengthFour(player)
}
if (length == 5) {
return lengthFive(player)
}
}
// length 1
function lengthOne(arr) {
console.log(arr);
var t1 = arr['Team1'].slice(0, 1)
var t2 = arr['Team2'].slice(0, 1)
return [t1, t2]
}
function lengthTwo(arr) {
var t1 = arr['Team1'].slice(0, 1).concat(arr['Team2'].slice(0, 1));
var t2 = arr['Team1'].slice(0, 2);
var t3 = arr['Team2'].slice(0, 2);
return [t1, t2, t3]
}
function lengthThree(arr) {
var t1 = arr['Team1'].slice(0, 1).concat(arr['Team2'].slice(0, 2));
var t2 = arr['Team1'].slice(1, 3).concat(arr['Team2'].slice(0, 1));
return [t1, t2]
}
function lengthFour(arr) {
var t1 = arr['Team1'].slice(0, 1).concat(arr['Team2'].slice(0, 3));
var t2 = arr['Team1'].slice(1, 4).concat(arr['Team2'].slice(0, 1));
var t3 = arr['Team1'].slice(2, 4).concat(arr['Team2'].slice(0, 2));
return [t1, t2, t3]
}
function lengthFive(arr) {
var t1 = arr['Team1'].slice(0, 1).concat(arr['Team2'].slice(0, 4));
var t2 = arr['Team1'].slice(1, 5).concat(arr['Team2'].slice(1, 2));
var t3 = arr['Team1'].slice(2, 5).concat(arr['Team2'].slice(0, 2));
return [t1, t2, t3]
}
`+ el.playerName + ` (` + el.team + `)
`+tm.playerName+`
`+tm.pt+`
`+tm.playerName+`
`+tm.pt+`
`+tm.playerName+`
`+tm.pt+`
`+tm.playerName+`
`+tm.pt+`
Total Credit `+credit+`
`+ wk +`
`+ bat +`
`+ all +`
`+ bwl +`
ConversionConversion EmoticonEmoticon