// Get elements var tasks = document.getElementById('chart_tasks').getContext('2d'); var points = document.getElementById('chart_points').getContext('2d'); let fields = { earnings_tot1: document.getElementById('earnings_tot1'), earnings_tot2: document.getElementById('earnings_tot2'), earnings_tot3: document.getElementById('earnings_tot3'), p1_piecerate: document.getElementById('p1_piecerate'), p1_tasks_tot: document.getElementById('p1_tasks_tot'), p1_tasks_share: document.getElementById('p1_tasks_share'), p1_commit_tot: document.getElementById('p1_commit_tot'), p1_commit_share: document.getElementById('p1_commit_share'), p1_earnings_tot: document.getElementById('p1_earnings_tot'), p1_earnings_share: document.getElementById('p1_earnings_share'), p1_allocation_tot: document.getElementById('p1_allocation_tot'), p1_allocation_share: document.getElementById('p1_allocation_share'), p2_piecerate: document.getElementById('p2_piecerate'), p2_tasks_tot: document.getElementById('p2_tasks_tot'), p2_tasks_share: document.getElementById('p2_tasks_share'), p2_commit_tot: document.getElementById('p2_commit_tot'), p2_commit_share: document.getElementById('p2_commit_share'), p2_earnings_tot: document.getElementById('p2_earnings_tot'), p2_earnings_share: document.getElementById('p2_earnings_share'), p2_allocation_tot: document.getElementById('p2_allocation_tot'), p2_allocation_share: document.getElementById('p2_allocation_share'), } // Graphs function graphs() { // Get elements let task1= parseInt(p1_tasks_tot.textContent); let task2= parseInt(p2_tasks_tot.textContent); let earning1= parseInt(p1_earnings_tot.textContent); let earning2= parseInt(p2_earnings_tot.textContent); // Tasks var ChartTasks = new Chart(tasks, { type: 'pie', data: { datasets: [{ data: [task2, task1], backgroundColor: ['#5f96de', '#de5f6c'], }] }, options: { maintainAspectRatio: false, responsive: true, width: 50, height: 50, }, }); // Points var ChartPoints = new Chart(points, { type: 'pie', data: { datasets: [{ data: [earning2, earning1], backgroundColor: ['#5f96de', '#de5f6c'], }] }, options: { maintainAspectRatio: false, responsive: true, width: 50, height: 50, }, }); } // Commitment Graph function comm_graph() { var comm = document.getElementById('chart_comm').getContext('2d'); let comm1= parseInt(p1_comm_tot.textContent); let comm2= parseInt(p2_comm_tot.textContent); var ChartComm = new Chart(comm, { type: 'pie', data: { datasets: [{ data: [comm2, comm1], backgroundColor: ['#5f96de', '#de5f6c'], }] }, options: { maintainAspectRatio: false, responsive: true, width: 50, height: 50, }, }); } // Earnings function earnings() { let piecerate1= parseInt(document.getElementById('p1_piecerate').textContent); let piecerate2= parseInt(document.getElementById('p2_piecerate').textContent); let task1= parseInt(document.getElementById('p1_tasks_tot').textContent); let task2= parseInt(document.getElementById('p2_tasks_tot').textContent); let earning1 = document.getElementById('p1_earnings_tot'); let earning2 = document.getElementById('p2_earnings_tot'); let earnings_tot = document.getElementById('earnings_tot1'); earning1.textContent= task1*piecerate1; earning2.textContent= task2*piecerate2; earnings_tot.textContent = parseInt(earning1.textContent)+parseInt(earning2.textContent); } function shares() { let piecerate1= parseInt(document.getElementById('p1_piecerate').textContent); let piecerate2= parseInt(document.getElementById('p2_piecerate').textContent); let task1= parseInt(document.getElementById('p1_tasks_tot').textContent); let task2= parseInt(document.getElementById('p2_tasks_tot').textContent); let earning1 = task1*piecerate1 let earning2 = task2*piecerate2 let task1_share= document.getElementById('p1_tasks_share'); let task2_share= document.getElementById('p2_tasks_share'); let earning1_share = document.getElementById('p1_earnings_share'); let earning2_share = document.getElementById('p2_earnings_share'); task1_share.textContent= ((task1/(task1+task2))*100).toFixed(0); task2_share.textContent= ((task2/(task1+task2))*100).toFixed(0); earning1_share.textContent= ((earning1/(earning1+earning2))*100).toFixed(0); earning2_share.textContent= ((earning2/(earning1+earning2))*100).toFixed(0); } // Only allow numbers function allocation_integer() { const input = p2_allocation_tot.value; const regex = /^\d*$/; // Regular expression to match only digits if (!regex.test(input)) { // If the input is not a valid integer, remove non-digit characters p2_allocation_tot.value = input.replace(/[^\d]/g, ""); } } // Autocomplete function allocation_share() { let total; if (p2_allocation_tot.value.trim() !== '') { total = 100; p1_allocation_share.textContent = 100 - (p2_allocation_tot.value); p2_allocation_share.textContent = p2_allocation_tot.value; } else { p1_allocation_share.textContent = '...'; p2_allocation_share.textContent = '...'; } } // Outcome functions function p2_input() { allocation_share() }