$("#widget-virtual-meet-selection").hide(); $("#widget-virtual-meet-results").hide(); $("#initialLoad").show(); displayYears(); function setYear(selection) { var data = {}; data['sf'] = 'teams'; data['Year'] = $("#selectYear" + selection).val(); $.ajax({ url: '/data/virtualmeet/', type: 'get', data: data, dataType: 'json', success: function(data) { if ( data.message != "" ) { alertMsg(data.message); } else { var options = ""; for ( var i=0; i < data.teams.length; i++ ) { if ( (selection == 1 && $("#selectTeam2").val() != data.teams[i].TeamID ) || (selection == 2 && $("#selectTeam1").val() != data.teams[i].TeamID) ) { var selected = ""; if ( (selection == 1 && $("#selectTeam1").val() == data.teams[i].TeamID) || (selection == 2 && $("#selectTeam2").val() == data.teams[i].TeamID) ) selected = " SELECTED "; options = options + ""; } } $("#selectTeam"+selection).html(options); setSchedule(1); setSchedule(2); } }, error: function (jqXHR, textStatus, errorThrown) { alertMsg(jqXHR.responseText); } }); } function setSchedule(selection) { var data = {}; data['sf'] = 'schedules'; data['Year'] = $("#selectYear" + selection).val(); data['Team'] = $("#selectTeam" + selection).val(); $.ajax({ url: '/data/virtualmeet/', type: 'get', data: data, dataType: 'json', success: function(data) { if ( data.message != "" ) { alertMsg(data.message); } else { var options = ""; for ( var i=0; i < data.schedules.length; i++ ) { options = options + ""; } $("#selectSwims"+selection).html(options); } }, error: function (jqXHR, textStatus, errorThrown) { alertMsg(jqXHR.responseText); } }); } function runVirtualMeet() { $("#widget-virtual-meet-selection").hide(); $("#widget-virtual-meet-results").show(); $("#widget-results-header").html(""); $("#widget-results-table").html(""); var loading = document.createElement("div"); loading.id = "ul-results-loading"; $("#widget-results-table").append(loading); $("#ul-results-loading").html("
PROCESSING VIRTUAL MEET...
"); var data = {}; data['sf'] = 'processmeet'; data['Year1'] = $("#selectYear1").val(); data['Team1'] = $("#selectTeam1").val(); data['Event1'] = $("#selectSwims1").val(); data['Year2'] = $("#selectYear2").val(); data['Team2'] = $("#selectTeam2").val(); data['Event2'] = $("#selectSwims2").val(); $.ajax({ url: '/data/virtualmeet/', type: 'get', data: data, dataType: 'json', success: function(data) { if ( data.message != "" ) { alertMsg(data.message); } else { $("#widget-results-table").html(""); displayResults(data); } }, error: function (jqXHR, textStatus, errorThrown) { alertMsg(jqXHR.responseText); } }); } function displayResults(data) { var resultsHeader = "
Back
"; resultsHeader = resultsHeader + "

" + data.Team1.TeamName + " (" + data.Team1.Year + ") vs " + data.Team2.TeamName + " (" + data.Team2.Year + ")

"; resultsHeader = resultsHeader + "
"; resultsHeader = resultsHeader + "
"; resultsHeader = resultsHeader + "" + data.Team1.TeamName + " - " + data.Team1.Points + ""; if ( data.Team1.EventTitle != "" ) { resultsHeader = resultsHeader + "
" + data.Team1.EventTitle + "
   on " + unWrapDate(data.Team1.EventDate); if ( data.Team1.Course == "S" ) resultsHeader = resultsHeader + "
   25 Meters"; else resultsHeader = resultsHeader + "
   25 Yards (times converted to meters)"; } else { resultsHeader = resultsHeader + "
All swims for year
  (yards times converted to meters)"; } resultsHeader = resultsHeader + "
"; resultsHeader = resultsHeader + "
"; resultsHeader = resultsHeader + "" + data.Team2.TeamName + " - " + data.Team2.Points + ""; if ( data.Team2.EventTitle != "" ) { resultsHeader = resultsHeader + "
" + data.Team2.EventTitle + "
   on " + unWrapDate(data.Team2.EventDate); if ( data.Team2.Course == "S" ) resultsHeader = resultsHeader + "
   25 Meters"; else resultsHeader = resultsHeader + "
   25 Yards (times converted to meters)"; } else { resultsHeader = resultsHeader + "
All swims for year
  (yards times converted to meters)"; } resultsHeader = resultsHeader + "
"; resultsHeader = resultsHeader + "
"; $("#widget-results-header").html(resultsHeader); var master_table_head = document.createElement("thead"); master_table_head.id = "master_table_head_results"; $("#widget-results-table").append(master_table_head); var master_table_head_row = document.createElement("tr"); master_table_head_row.id = "master_table_head_row_results"; $("#master_table_head_results").append(master_table_head_row); var master_table_head_row_cell = document.createElement("th"); $("#master_table_head_row_results").append(master_table_head_row_cell); var master_table_body = document.createElement("tbody"); master_table_body.id = "master_table_body_results"; $("#widget-results-table").append(master_table_body); for ( i=0; i < data.strokes.length; i++ ) { var master_table_time_head_row = document.createElement("tr"); master_table_time_head_row.id = "master_table_time_head_row_results_" + i; $("#widget-results-table").append(master_table_time_head_row); $("#master_table_time_head_row_results_" + i).addClass("results-table-head-row"); time_line = getStrokeTitle(data.strokes[i], "M", data.strokes[i].TimesM.length) + " "+ getStrokeTitle(data.strokes[i], "F",data.strokes[i].TimesF.length); $("#master_table_time_head_row_results_"+i).html(time_line); getResultLine(data.strokes[i], data.strokes[i].TimesM,data.strokes[i].TimesF, i); } } var all_strokes = ["Strokes","Free","Back","Breast","Fly","IM","Free Relay","Medley Relay"]; function getStrokeTitle(stroke,gender,count) { var title = ""; if ( count == 0 ) return " ;"; title = "  "; if ( stroke.MixedGender == "1" && stroke.TimesM.length > 0 ) title = title + "Mixed"; else if ( gender == "F" && stroke.TimesF.length > 0) title = title + "Girls"; else if ( gender == "M" && stroke.TimesM.length > 0) title = title + "Boys"; if ( title != "" ) { title = title + " " + all_strokes[stroke.Stroke]; title = title + " " + stroke.Distance + "M"; if ( stroke.AgeLow == 0 && stroke.AgeHigh == 18 ) title = title + " Mixed Age"; else if ( stroke.AgeLow == 0 && stroke.AgeHigh < 18 ) title = title + " " + stroke.AgeHigh + "&U"; else title = title + " " + stroke.AgeLow + "-" + stroke.AgeHigh; } title + ""; return title; } function getResultLine(stroke, mTimes,fTimes, i) { var master_table_time_head_row = document.createElement("tr"); master_table_time_head_row.id = "master_table_time_head_row_results_data" + i; $("#widget-results-table").append(master_table_time_head_row); var boys_times = ""; var girls_times = "
"; var count = 0; var boys_place = count+1; var boys_last_time = 0.00; var girls_place = count+1; var girls_last_time = 0.00; var rowClass = ""; while ( count >= 0 ) { rowClass = getRowClass(count); if ( mTimes.length > count ) { var boys_place_text = ""; if ( mTimes[count].FinalTime != boys_last_time ) { boys_place = count+1; boys_place_text = boys_place + "."; } boys_last_time = mTimes[count].FinalTime; var eSwim = ""; if ( mTimes[count].SwimCode == "EXHB" ) eSwim = " X"; boys_times = boys_times + ""; boys_times = boys_times + "" + "" + "" + "" + ""; boys_times = boys_times + ""; } else if ( fTimes.length > count ) { boys_times = boys_times + ""; boys_times = boys_times + "" + "" + "" + "" + ""; boys_times = boys_times + ""; } if ( fTimes.length > count ) { var girls_place_text = ""; if ( fTimes[count].FinalTime != girls_last_time ) { girls_place = count+1; girls_place_text = girls_place + "."; } girls_last_time = fTimes[count].FinalTime; var eSwim = ""; if ( fTimes[count].SwimCode == "EXHB" ) eSwim = " X"; girls_times = girls_times + ""; girls_times = girls_times + "" + "" + "" + "" + ""; girls_times = girls_times + ""; } else if ( mTimes.length > count ) { girls_times = girls_times + ""; girls_times = girls_times + "" + "" + "" + "" + ""; girls_times = girls_times + ""; } count++; if ( mTimes.length < count && fTimes.length < count ) { boys_times = boys_times + ""; boys_times = boys_times + "" + "" + "" + "" + ""; boys_times = boys_times + ""; girls_times = girls_times + ""; girls_times = girls_times + "" + "" + "" + "" + ""; girls_times = girls_times + ""; break; } } boys_times = boys_times + "
" + boys_place_text + eSwim + "" + formatSwimTime(mTimes[count].FinalTime) + "  " + mTimes[count].TeamID + "" + getSwimmerNames(mTimes[count]) + "
         
" + girls_place_text + eSwim + "" + formatSwimTime(fTimes[count].FinalTime) + "  " + fTimes[count].TeamID + "" + getSwimmerNames(fTimes[count]) + "
         
         
         
"; girls_times = girls_times + ""; time_line = "" + boys_times + ""+ " "+ "" + girls_times + ""; $("#master_table_time_head_row_results_data"+i).html(time_line); } function getSwimmerNames(data) { if ( data.Stroke < 6 ) return "" + data.Swimmer1Name + ""; //getSwimmer(dln, dfn, dk, dstk) var Swimmer1 = "" + data.Swimmer1Name + ""; var Swimmer2 = "" + data.Swimmer2Name + ""; var Swimmer3 = "" + data.Swimmer3Name + ""; var Swimmer4 = "" + data.Swimmer4Name + ""; return Swimmer1 + "
" + Swimmer2 + "
" + Swimmer3 + "
" + Swimmer4; } function getRowClass(i) { if ( i % 2 === 0 ) return "results-table-head-even"; else return "results-table-head-odd"; } function formatSwimTime(theTime) { var stime = ""+theTime; var sp = stime.indexOf("."); if ( sp + 3 < stime.length ) { stime = stime.substring(0,sp + 3); stime = parseInt(stime); } var secs = 0.00; var mins = 0; while (true) { if ( stime < 60 ) { secs = parseFloat(stime); break; } mins++; stime = stime - 60; stime = stime.toFixed(2); } var ssecs = ""+secs; sp = ssecs.indexOf("."); sp1 = ""; sp2 = ""; if ( sp > 0 ) { sp1 = ssecs.substring(0,sp); sp2 = ssecs.substring(sp+1); if ( sp2.length == 1 ) sp2 = sp2 + "0"; } else { sp1 = ssecs; sp2 = "00"; } if ( secs < 10 ) sp1 = "0" + sp1; if ( mins > 0 ) return mins + ":" + sp1 + "." + sp2; else return sp1 + "." + sp2; } function displayYears() { var data = {}; data['sf'] = 'years'; $.ajax({ url: '/data/virtualmeet/', type: 'get', data: data, dataType: 'json', success: function(data) { var options = ""; for ( var i=0; i < data.years.length; i++ ) { options = options + ""; } $("#selectYear1").html(options); $("#selectYear2").html(options); setYear(1); setYear(2); $("#initialLoad").hide(); $("#widget-virtual-meet-selection").show(); }, error: function (jqXHR, textStatus, errorThrown) { alertMsg(jqXHR.responseText); } }); } function goBack() { $("#widget-virtual-meet-selection").show(); $("#widget-virtual-meet-results").hide(); }