// ============================================================================== // Copyright (C) 2019 - Philip Paquette, Steven Bocco // // This program is free software: you can redistribute it and/or modify it under // the terms of the GNU Affero General Public License as published by the Free // Software Foundation, either version 3 of the License, or (at your option) any // later version. // // This program is distributed in the hope that it will be useful, but WITHOUT // ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS // FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more // details. // // You should have received a copy of the GNU Affero General Public License along // with this program. If not, see . // ============================================================================== import React from 'react'; import {Forms} from "../components/forms"; import {STRINGS} from "../../diplomacy/utils/strings"; import PropTypes from "prop-types"; export class FindForm extends React.Component { constructor(props) { super(props); this.state = this.initState(); } initState() { return { game_id: '', status: '', include_protected: false, for_omniscience: false }; } render() { const onChange = Forms.createOnChangeCallback(this, this.props.onChange); const onSubmit = Forms.createOnSubmitCallback(this, this.props.onSubmit); return (
{Forms.createRow( Forms.createColLabel('game_id', 'game id (should contain):'), )} {Forms.createRow( Forms.createColLabel('status', 'status:'), () )}
{Forms.createCheckbox('include_protected', 'include protected games.', Forms.getValue(this.state, 'include_protected'), onChange)}
{Forms.createCheckbox('for_omniscience', 'for omniscience.', Forms.getValue(this.state, 'for_omniscience'), onChange)}
{Forms.createRow('', Forms.createSubmit('find games', true, onSubmit))}
); } } FindForm.propTypes = { onChange: PropTypes.func, onSubmit: PropTypes.func };