$("#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_place_text + eSwim + " | " +
"" + formatSwimTime(mTimes[count].FinalTime) + " | " +
" | " +
"" + mTimes[count].TeamID + " | " +
"" + getSwimmerNames(mTimes[count]) + " | ";
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_place_text + eSwim + " | " +
"" + formatSwimTime(fTimes[count].FinalTime) + " | " +
" | " +
"" + fTimes[count].TeamID + " | " +
"" + getSwimmerNames(fTimes[count]) + " | ";
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 + "
";
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();
}