diff --git a/src/components/collection/Search.js b/src/components/collection/Search.js index ea6f311..47e95dc 100644 --- a/src/components/collection/Search.js +++ b/src/components/collection/Search.js @@ -9,6 +9,7 @@ import API from '../SpreadsheetData'; export default class SearchCollection extends React.Component { @observable loaded = false; @observable input; + list = ["sets", "types", "rarity", "tribes", "elements", "disciplines", "mull", "gender"]; constructor(props) { super(props); @@ -28,15 +29,17 @@ export default class SearchCollection extends React.Component { let input = { name: "", text: "", - subtype: "", + subtypes: "", + past: false, + mirage: false, sets: {}, types: {attack: false, battlegear: false, creature: false, location: false, mugic: false}, rarity: {common: false, uncommon: false, rare: false, 'super rare': false, 'ultra rare': false, promo: false}, tribes: {danian: false, 'm\'arrillian': false, 'mipedian': false, overworld: false, underworld: false, generic: false}, elements: {fire: false, air: false, earth: false, water: false, none: false, and: false}, - disciplines: {courage: false, power: false, wisdom: false, speed: false}, - energy: {min: 0, max: 0}, - mcbp: {min: 0, max: 0}, + disciplines: {courage: '', power: '', wisdom: '', speed: ''}, + energy: {min: '', max: ''}, + mcbp: {min: '', max: ''}, mull: {unique: false, loyal: false, legendary: false, mixed: false}, gender: {ambiguous: false, female: false, male: false} }; @@ -55,16 +58,13 @@ export default class SearchCollection extends React.Component { query[decodeURIComponent(pair[0])] = decodeURIComponent(pair[1] || ''); } - let update = (d) => { + this.list.forEach((d) => { if (query[d]) { query[d].split(',').map(item => { this.input[d][item] = true; }); } - } - - ["sets", "types", "rarity", "gender", "mull", "elements" - ].forEach(item => update(item)); + }); } async updateQuery() { @@ -82,8 +82,7 @@ export default class SearchCollection extends React.Component { else return ""; } - ["sets", "types", "rarity", "gender", "mull", "elements" - ].forEach(item => queryString += update(item)); + this.list.forEach(item => queryString += update(item)); // Strip trailing & queryString = queryString.replace(/\&$/, ''); @@ -140,32 +139,26 @@ export default class SearchCollection extends React.Component { }).slice(0, -2); let disciplines = []; - - let mull = (