// DEFAULTS // CONSTANTS const revShare = 50; const revShareMultiplier = 1; const costPerPlayer = 100; const minBeforeRevShare = 0; // SET INITIAL VALUES TO CONSTANT DEFAULT $('#default-revenue-share').text(formatNumber(revShare)); $('#default-cost-per-player').text(formatNumber(costPerPlayer)); $('#default-min-before-revenue-share').text(formatNumber(minBeforeRevShare)); // UPDATE VALUES ON INPUT EDIT $('#input-revenue-share').on('input', function(){ let revShare = $(this).val(); let revShareMultiplier = revShare/100; $('#default-revenue-share').text(formatNumber(revShare)); }); $('#input-cost-per-player').on('input', function(){ let costPerPlayer = $(this).val(); $('#default-cost-per-player').text(formatNumber(costPerPlayer)); }); $('#input-min-before-revenue-share').on('input', function(){ let minBeforeRevShare = $(this).val(); $('#default-min-before-revenue-share').text(formatNumber(minBeforeRevShare)); }); // ---------- SINGLE AND MULTI-TEAM ORGANIZATIONS ---------- // SINGLE TEAM ORGANIZATION // PLAYERS PER TEAM $('#sto-players-per-team').on('input', function(){ $('#sto-total').text(formatNumber((Number($('#sto-players-per-team').val())*90)+4500)); }); // MULTI-TEAM ORGANIZATION // PLAYERS PER TEAM $('#mto-players-per-team').on('input', function(){ $('#mto-total').text(formatNumber((Number($('#mto-players-per-team').val())*90)+4500)); }); // ---------- TOURNAMENT SECTION -- TEAM REVENUE ---------- // TEAMS PER EVENT FOR TEAM REVENUE $('#tournaments-teams-per-event').on('input', function(){ $('#tournament-team-rev').text(formatNumber(Number($('#tournaments-teams-per-event').val()*$('#tournaments-events-per-year').val()*($('#input-revenue-share').val()/100)*275))); }); // EVENTS PER YEAR FOR TEAM REVENUE $('#tournaments-events-per-year').on('input', function(){ $('#tournament-team-rev').text(formatNumber(Number($('#tournaments-teams-per-event').val()*$('#tournaments-events-per-year').val()*($('#input-revenue-share').val()/100)*275))); }); // REVENUE SHARE FOR TEAM REVENUE $('#input-revenue-share').on('input', function(){ $('#tournament-team-rev').text(formatNumber(Number($('#tournaments-teams-per-event').val()*$('#tournaments-events-per-year').val()*($('#input-revenue-share').val()/100)*275))); }); // TOURNAMENT SECTION -- PLAYER REVENUE // TEAMS PER EVENT FOR PLAYER REVENUE $('#tournaments-teams-per-event').on('input', function(){ $('#tournament-player-rev').text(formatNumber(Number($('#tournaments-teams-per-event').val()*$('#tournaments-events-per-year').val()*$('#tournaments-players-per-team').val()*($('#input-revenue-share').val()/100)*45))); }); // EVENTS PER YEAR FOR PLAYER REVENUE $('#tournaments-events-per-year').on('input', function(){ $('#tournament-player-rev').text(formatNumber(Number($('#tournaments-teams-per-event').val()*$('#tournaments-events-per-year').val()*$('#tournaments-players-per-team').val()*($('#input-revenue-share').val()/100)*45))); }); // PLAYERS PER TEAM FOR PLAYER REVENUE $('#tournaments-players-per-team').on('input', function(){ $('#tournament-player-rev').text(formatNumber(Number($('#tournaments-teams-per-event').val()*$('#tournaments-events-per-year').val()*$('#tournaments-players-per-team').val()*($('#input-revenue-share').val()/100)*45))); }); // REVENUE SHARE FOR PLAYER REVENUE $('#input-revenue-share').on('input', function(){ $('#tournament-player-rev').text(formatNumber(Number($('#tournaments-teams-per-event').val()*$('#tournaments-events-per-year').val()*$('#tournaments-players-per-team').val()*($('#input-revenue-share').val()/100)*45))); }); // TOURNAMENT SECTION -- LABOR COST // FIELDS PER EVENT FOR LABOR COST $('#tournaments-fields-per-event').on('input', function(){ $('#tournament-labor-cost').text(formatNumber(Number($('#tournaments-fields-per-event').val()*$('#tournaments-games-per-day').val()*$('#tournaments-events-per-year').val()*$('#tournaments-days-per-event').val())*16)); }); // GAMES PER DAY FOR LABOR COST $('#tournaments-games-per-day').on('input', function(){ $('#tournament-labor-cost').text(formatNumber(Number($('#tournaments-fields-per-event').val()*$('#tournaments-games-per-day').val()*$('#tournaments-events-per-year').val()*$('#tournaments-days-per-event').val())*16)); }); // DAYS PER EVENT FOR LABOR COST $('#tournaments-days-per-event').on('input', function(){ $('#tournament-labor-cost').text(formatNumber(Number($('#tournaments-fields-per-event').val()*$('#tournaments-games-per-day').val()*$('#tournaments-events-per-year').val()*$('#tournaments-days-per-event').val())*16)); }); // EVENTS PER YEAR FOR LABOR COST $('#tournaments-events-per-year').on('input', function(){ $('#tournament-labor-cost').text(formatNumber(Number($('#tournaments-fields-per-event').val()*$('#tournaments-games-per-day').val()*$('#tournaments-events-per-year').val()*$('#tournaments-days-per-event').val())*16)); }); // TOURNAMENT SECTION -- HARDWARE COST // FIELDS PER EVENT FOR HARDWARE COST $('#tournaments-fields-per-event').on('input', function(){ $('#tournament-hardware-cost').text(formatNumber(Number($('#tournaments-fields-per-event').val())*5500)); }); // ---------- SHOWCASE SECTION -- REVENUE ---------- // PLAYERS PER EVENT $('#showcases-players-per-event').on('input', function(){ $('#showcase-revenue').text(formatNumber(Number($('#showcases-players-per-event').val()*$('#showcases-events-per-year').val()*($('#input-revenue-share').val()/100))*90)); }); // EVENTS PER YEAR $('#showcases-events-per-year').on('input', function(){ $('#showcase-revenue').text(formatNumber(Number($('#showcases-players-per-event').val()*$('#showcases-events-per-year').val()*($('#input-revenue-share').val()/100))*90)); }); // REVENUE SHARE $('#input-revenue-share').on('input', function(){ $('#showcase-revenue').text(formatNumber(Number($('#showcases-players-per-event').val()*$('#showcases-events-per-year').val()*($('#input-revenue-share').val()/100))*90)); }); //SHOWCASE SECTION -- LABOR COST // DAYS PER EVENT $('#showcases-days-per-showcase').on('input', function(){ $('#showcase-labor-cost').text(formatNumber(Number($('#showcases-days-per-showcase').val()*$('#showcases-hours-per-day').val()*$('#showcases-simultaneous-stations').val())*16)); }); // HOURS PER DAY $('#showcases-hours-per-day').on('input', function(){ $('#showcase-labor-cost').text(formatNumber(Number($('#showcases-days-per-showcase').val()*$('#showcases-hours-per-day').val()*$('#showcases-simultaneous-stations').val())*16)); }); // SIMULTANEOUS STATIONS $('#showcases-simultaneous-stations').on('input', function(){ $('#showcase-labor-cost').text(formatNumber(Number($('#showcases-days-per-showcase').val()*$('#showcases-hours-per-day').val()*$('#showcases-simultaneous-stations').val())*16)); }); //SHOWCASE SECTION -- HARDWARE COST // SIMULTANEOUS STATIONS $('#showcases-simultaneous-stations').on('input', function(){ $('#showcase-hardware-cost').text(formatNumber(Number($('#showcases-simultaneous-stations').val())*4500)); }); // ---------- CAMP SECTION -- REVENUE ---------- // PLAYERS PER EVENT $('#camps-players-per-event').on('input', function(){ $('#camp-revenue').text(formatNumber(Number($('#camps-players-per-event').val()*$('#camps-events-per-year').val()*($('#input-revenue-share').val()/100))*90)); }); // EVENTS PER YEAR $('#camps-events-per-year').on('input', function(){ $('#camp-revenue').text(formatNumber(Number($('#camps-players-per-event').val()*$('#camps-events-per-year').val()*($('#input-revenue-share').val()/100))*90)); }); // REVENUE SHARE $('#input-revenue-share').on('input', function(){ $('#camp-revenue').text(formatNumber(Number($('#camps-players-per-event').val()*$('#camps-events-per-year').val()*($('#input-revenue-share').val()/100))*90)); }); //CAMP SECTION -- LABOR COST // DAYS PER EVENT $('#camps-days-per-event').on('input', function(){ $('#camp-labor-cost').text(formatNumber(Number($('#camps-days-per-event').val()*$('#camps-hours-per-day').val()*$('#camps-simultaneous-stations').val())*16)); }); // HOURS PER DAY $('#camps-hours-per-day').on('input', function(){ $('#camp-labor-cost').text(formatNumber(Number($('#camps-days-per-event').val()*$('#camps-hours-per-day').val()*$('#camps-simultaneous-stations').val())*16)); }); // SIMULTANEOUS STATIONS $('#camps-simultaneous-stations').on('input', function(){ $('#camp-labor-cost').text(formatNumber(Number($('#camps-days-per-event').val()*$('#camps-hours-per-day').val()*$('#camps-simultaneous-stations').val())*16)); }); //CAMP SECTION -- HARDWARE COST // SIMULTANEOUS STATIONS $('#camps-simultaneous-stations').on('input', function(){ $('#camp-hardware-cost').text(formatNumber(Number($('#camps-simultaneous-stations').val())*4500)); }); // ---------- INDOOR & OUTDOOR FIELDS ---------- //INDOOR FIELDS SECTION -- HARDWARE COST //READ NUMBER OF FIELDS $('#indoor-fields-number-of-fields').on('input', function(){ $('#indoor-fields-hardware-cost').text(formatNumber(Number($('#indoor-fields-number-of-fields').val()*4500))); }); // ADD $100 * # OF FIELDS IF HARDWIRED INTERNET = NO $('#indoor-fields-hardwired-internet-no').on('input', function(){ $('#indoor-fields-hardware-cost').text(formatNumber(Number($('#indoor-fields-number-of-fields').val()*4600))); }); // REVERSE THIS IF HARDWIRED INTERNET = YES $('#indoor-fields-hardwired-internet-yes').on('input', function(){ $('#indoor-fields-hardware-cost').text(formatNumber(Number($('#indoor-fields-number-of-fields').val()*4500))); }); //OUTDOOR FIELDS SECTION -- HARDWARE COST //READ NUMBER OF FIELDS $('#outdoor-fields-number-of-fields').on('input', function(){ $('#outdoor-fields-hardware-cost').text(formatNumber(Number($('#outdoor-fields-number-of-fields').val()*4500))); }); // ADD $100 * # OF FIELDS IF HARDWIRED INTERNET = NO $('#outdoor-fields-hardwired-internet-no').on('input', function(){ $('#outdoor-fields-hardware-cost').text(formatNumber(Number($('#outdoor-fields-number-of-fields').val()*4600))); }); // REVERSE THIS IF HARDWIRED INTERNET = YES $('#outdoor-fields-hardwired-internet-yes').on('input', function(){ $('#outdoor-fields-hardware-cost').text(formatNumber(Number($('#outdoor-fields-number-of-fields').val()*4500))); }); // format number function // e.g. 3500 becomes 3,500 function formatNumber(num){ return new Intl.NumberFormat('en-US').format(num); }