package data.Enums.solar; import java.util.HashMap; import java.util.HashSet; import java.util.Map; import javafx.collections.FXCollections; import javafx.collections.ObservableList; public class SolarFilters { private static HashMap> SOLAR_FILTERS; public static final String SOLA = "filter.solarSola"; public static final String PREDMET = "filter.solarPredmet"; public static final String RAZRED = "filter.solarRazred"; public static final String REGIJA = "filter.solarRegija"; public static final String TIP = "filter.solarVrstaBesedila"; public static final String LETO = "filter.solarLeto"; static { SOLAR_FILTERS = new HashMap<>(); SOLAR_FILTERS.put(REGIJA, FXCollections.observableArrayList("Celje", "Gorica", "Koper", "Kranj", "Krško", "Ljubljana", "Maribor", "Murska Sobota", "Novo mesto", "Postojna", "Slovenj Gradec")); SOLAR_FILTERS.put(PREDMET, FXCollections.observableArrayList("državljanska vzgoja in etika", "ekonomija", "filozofija", "geografija", "kemija", "podjetništvo", "psihologija", "slovenščina", "sociologija", "umetnostna vzgoja", "zgodovina")); SOLAR_FILTERS.put(RAZRED, FXCollections.observableArrayList("6. razred", "7. razred", "8. razred", "9. razred", "1. letnik", "2. letnik", "3. letnik", "4. letnik", "5. letnik", "maturitetni tečaj")); SOLAR_FILTERS.put(LETO, FXCollections.observableArrayList("2007", "2008", "2009", "2009/2010", "2010")); SOLAR_FILTERS.put(SOLA, FXCollections.observableArrayList("gimnazija", "osnovna šola", "poklicna šola", "strokovna šola")); SOLAR_FILTERS.put(TIP, FXCollections.observableArrayList("esej/spis", "pisni izdelek (učna ura)", "test (daljše besedilo)", "test (odgovori na vprašanja)")); } /** * Returns filters with all possible values */ public static HashMap> getFiltersForComboBoxes() { return SOLAR_FILTERS; } /** * Returns filters with all possible values */ public static HashMap> getFiltersForComboBoxes(HashMap> foundFilters) { HashMap> filtersForComboBoxes = new HashMap<>(); for (Map.Entry> e : SOLAR_FILTERS.entrySet()) { if (!foundFilters.containsKey(e.getKey())) { // if, by some reason a specific filter wasn't in the corpus, return a blank list for that filter filtersForComboBoxes.put(e.getKey(), FXCollections.observableArrayList()); } else { filtersForComboBoxes.put(e.getKey(), FXCollections.observableArrayList(foundFilters.get(e.getKey())).sorted()); } } return filtersForComboBoxes; } }