// Generated by CoffeeScript 1.8.0 $(function() { var apply_default, check_search_term, dataset_info, group_info, make_default, open_window, populate_dataset, populate_group, populate_species, populate_type, process_json, redo_dropdown, gndata; process_json = function(data) { window.jdata = 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"); }); populate_species = function() { var species = gndata.species.map(function(item) { return item.slice(1,3); }); redo_dropdown($('#species'), species); return populate_group(); }; window.populate_species = populate_species; populate_group = function() { var species = $('#species').val(); var groups = gndata.groups[species].map(function(item) { return item.slice(1,3); }) redo_dropdown($('#group'), groups); return populate_type(); }; window.populate_group = populate_group; populate_type = function() { var species = $('#species').val(); var group = $('#group').val(); // var type_list = this.jdata.types[species][group]; console.log(species,group,gndata.types[species][group]) 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; populate_dataset = function() { var species = $('#species').val(); var group = $('#group').val(); var type = $('#type').val(); console.log("sgt:", species, group, type); dataset_list = this.jdata.datasets[species][group][type]; console.log("pop_dataset:", dataset_list); return redo_dropdown($('#dataset'), dataset_list); }; window.populate_dataset = populate_dataset; 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($("