diff --git a/src/components/structures/RoomDirectory.js b/src/components/structures/RoomDirectory.js index a232d845..3117d52f 100644 --- a/src/components/structures/RoomDirectory.js +++ b/src/components/structures/RoomDirectory.js @@ -132,7 +132,7 @@ module.exports = React.createClass({ opts.server = my_server; } if (this.nextBatch) opts.since = this.nextBatch; - if (this.state.filterString) opts.filter = { generic_search_term: my_filter_string } ; + if (my_filter_string) opts.filter = { generic_search_term: my_filter_string } ; return MatrixClientPeg.get().publicRooms(opts).then((data) => { if ( my_filter_string != this.state.filterString || @@ -498,7 +498,7 @@ module.exports = React.createClass({ if (!this.protocols) return null; - let instance; + let matched_instance; // Try to find which instance in the 'protocols' response // matches this network. We look for a matching protocol // and the existence of a 'domain' field and if present, @@ -509,18 +509,18 @@ module.exports = React.createClass({ // as long as it has no domain (which we assume to mean it's // there is only one possible instance). if (the_instance.fields.domain === undefined && network_info.domain === undefined) { - instance = this.protocols[network_info.protocol].instances[0]; + matched_instance = this.protocols[network_info.protocol].instances[0]; } } else if (network_info.domain) { // otherwise, we look for one with a matching domain. for (const this_instance of this.protocols[network_info.protocol].instances) { if (this_instance.fields.domain == network_info.domain) { - instance = this_instance; + matched_instance = this_instance; } } } - if (instance === undefined) return null; + if (matched_instance === undefined) return null; // now make an object with the fields specified by that protocol. We // require that the values of all but the last field come from the @@ -529,8 +529,8 @@ module.exports = React.createClass({ const fields = {}; for (let i = 0; i < required_fields.length - 1; ++i) { const this_field = required_fields[i]; - if (instance.fields[this_field] === undefined) return null; - fields[this_field] = instance.fields[this_field]; + if (matched_instance.fields[this_field] === undefined) return null; + fields[this_field] = matched_instance.fields[this_field]; } fields[required_fields[required_fields.length - 1]] = user_input; return fields; diff --git a/src/components/views/directory/NetworkDropdown.js b/src/components/views/directory/NetworkDropdown.js index cacea190..c113fbc4 100644 --- a/src/components/views/directory/NetworkDropdown.js +++ b/src/components/views/directory/NetworkDropdown.js @@ -170,17 +170,18 @@ export default class NetworkDropdown extends React.Component { icon = <img src="img/network-matrix.svg" width="16" height="16" />; span_class = 'mx_NetworkDropdown_menu_network'; } else { - if (this.props.config.networks[network]) { - if (this.props.config.networks[network].name) { - name = this.props.config.networks[network].name; - } else { - name = network; - } - if (this.props.config.networks[network].icon) { - icon = <img src={this.props.config.networks[network].icon} />; - } else { - icon = <img src={iconPath} width="16" height="16" />; - } + if (this.props.config.networks[network] === undefined) { + throw new Error(network + ' network missing from config'); + } + if (this.props.config.networks[network].name) { + name = this.props.config.networks[network].name; + } else { + name = network; + } + if (this.props.config.networks[network].icon) { + icon = <img src={this.props.config.networks[network].icon} />; + } else { + icon = <img src={iconPath} width="16" height="16" />; } span_class = 'mx_NetworkDropdown_menu_network'; @@ -210,7 +211,7 @@ export default class NetworkDropdown extends React.Component { </div>; current_value = <input type="text" className="mx_NetworkDropdown_networkoption" ref={this.collectInputTextBox} onKeyUp={this.onInputKeyUp} - placeholder="matrix.org" + placeholder="matrix.org" // 'matrix.org' as an example of an HS name /> } else { current_value = this._makeMenuOption(