vivo/productMods/js/visualization/mapofscience/VisCommonControl.js
tankchintan ca08343379 1. Added front-end for map of science vis.
2. Added Data tables for disciplines/sub-disciplines in the vis.
3. added support for different csv downloadables.
4. Added new updated libraries for DataTables plugin.
2011-05-26 17:11:16 +00:00

71 lines
1.7 KiB
JavaScript

/* $This file is distributed under the terms of the license in /doc/license.txt$ */
function switchMarkerManager(id) {
markerManager = getMarkerManager(id);
if(isActiveMarkerManager(markerManager)) {
markerManager.addAllToMap();
if(activeMarkerManager) {
activeMarkerManager.removeAllFromMap();
}
/* switch to target marker manager */
activeMarkerManager = markerManager;
}
}
function isActiveVisMode(visMode) {
return (currentVisMode == visMode);
}
function getVisModeController(visMode){
return visModeControllers[visMode];
}
function switchVisMode(visMode) {
if (currentVisMode != visMode) {
currentVisMode = visMode;
if (currentController) {
currentController.cleanView();
}
currentController = getVisModeController(visMode);
currentController.initView();
}
return
}
function loadMarkers(visMode, url, sync) {
// Download data from server and add to markerManager if not gotten already
var controller = getVisModeController(visMode);
if (controller.needLoaded()) {
if (sync) {
downloader.downloadAndWait(url, function(data) {
loadJSONToMarkerManager(data, visMode);
loadJSONToDataTableWidget(data);
});
} else {
downloader.download(url, function(data) {
loadJSONToMarkerManager(data, visMode);
loadJSONToDataTableWidget(data);
});
}
} // end if
}
function loadJSONToMarkerManager(data, visMode) {
if (data) {
var controller = getVisModeController(visMode);
controller.loadJsonData(data[0]);
}
}
function loadJSONToDataTableWidget(data) {
if (data) {
var widget = dataTableWidgets["MAIN_SCIENCE_AREAS"];
widget.loadJsonData(data[0]);
widget.initView();
$("#" + responseContainerID).unblock();
}
}