Files
sailing-analytics/java/com.tractrac.clientmodule/javadoc/script.js
T
Axel Uhl 510dc91794 upgraded TracAPI to 3.7.0; see below for their release notes:
1) Features

  - RaceCompetitorStatusType: New race competitor status type defined:
F_CONFIRMED. Represents a competitor with a control passing registered for the last gate/mark that is accepted as the official result (Requested by Ugo Alvazzi, 26/04/2017)
  - WebSockets support: instead of using a TCP connection is possible to retrieve data using WebSockets (using the same protocol used by the HTML Viewer). The protocol is not fully implemented and it only has to be used for testing (Requested by Jorge Piera, 30/04/2017).
  - Use an asynchronous API: the dataserver implementation has been migrated to an asynchronous API that provides a better performance downloading replay data (the tests show that is 2.5 times faster).
TracAPI has also adopted this new asynchronous interface but at this moment it continues using the synchronous approach (Requested by Jorge Piera, 03/05/2017)
  - Adding the method ISubscriberFactory.clean to release the objects in memory (Requested by André Borud, 01/06/2017)
  - Adding the method IPosition.isGPSTiming to know if the time of a position has been retrieved from a physical GPS device (Requested by Jérome Soussens, 21/06/2017)

  2) Bugs

  - When a static control is updated, the IControlPointPositionListener.gotControlPointPosition event is not called if the consumer application is not registered to the IEventSubscriber (Reported by Axel Uhl, 18/06/2017)
  - The live delay sometimes is not propagated. The server always propagates the event but TracAPI can filter it if the IEventSubscriber is not being used or if it has not been correctly initialized using the right live-uri (Reported by Julian Mayland, 21/06/2017)

Change-Id: I5c6b842268558d95491baf35db72f649ba61b032
2017-06-29 18:28:41 +02:00

31 lines
827 B
JavaScript
Executable File

function show(type)
{
count = 0;
for (var key in methods) {
var row = document.getElementById(key);
if ((methods[key] & type) != 0) {
row.style.display = '';
row.className = (count++ % 2) ? rowColor : altColor;
}
else
row.style.display = 'none';
}
updateTabs(type);
}
function updateTabs(type)
{
for (var value in tabs) {
var sNode = document.getElementById(tabs[value][0]);
var spanNode = sNode.firstChild;
if (value == type) {
sNode.className = activeTableTab;
spanNode.innerHTML = tabs[value][1];
}
else {
sNode.className = tableTab;
spanNode.innerHTML = "<a href=\"javascript:show("+ value + ");\">" + tabs[value][1] + "</a>";
}
}
}