// Generated by CoffeeScript 1.8.0 $(function() { var gndata; // loaded once for all to use process_json = function(data) { populate_species(); return apply_default(); }; // $.ajax('/static/new/javascript/dataset_menu_structure.json', { // dataType: 'json', // success: process_json // }); $.getJSON("http://localhost:8880/int/menu/main.json", function(data) { gndata = data; console.log("***** GOT DATA from GN_SERVER ****"); console.log(gndata); populate_species(); }).error(function() { console.log("ERROR: GN_SERVER not responding"); alert("ERROR: GN_SERVER internal REST API is not responding"); }); var populate_species = function() { var species_list = Object.keys(gndata.types).map(function(species) { var mitem = gndata.types[species][0] // console.log("Species menu:",species,mitem) return [species,mitem]; }); redo_dropdown($('#species'), species_list); return populate_group(); }; window.populate_species = populate_species; var populate_group = function() { var species = $('#species').val(); // var groups = gndata.groups[species].map(function(item) { var type_list = gndata.types.map(function(name) { console.log("Group menu:",species,gndata.types[name]) return species.slice(1,3); }) redo_dropdown($('#group'), groups); return populate_type(); }; window.populate_group = populate_group; var populate_type = function() { var species = $('#species').val(); var group = $('#group').val(); var type_list = gndata.types[species][group].map(function(item) { return [item,item]; }) redo_dropdown($('#type'), type_list); return populate_dataset(); }; window.populate_type = populate_type; var populate_dataset = function() { var species = $('#species').val(); var group = $('#group').val(); var type = $('#type').val(); var dataset_list = gndata.datasets[species][group][type].map(function(item) { return item.slice(1,3); }) return redo_dropdown($('#dataset'), dataset_list); }; window.populate_dataset = populate_dataset; var redo_dropdown = function(dropdown, items) { var item, _i, _len, _results; console.log("in redo:", dropdown, items); dropdown.empty(); _results = []; for (_i = 0, _len = items.length; _i < _len; _i++) { item = items[_i]; if (item.length > 2){ _results.push(dropdown.append($("