// Copyright 2020 Thomas Hintz
//
// This file is part of the Alpha Centauri Farming project.
//
// The Alpha Centauri Farming project is free software: you can
// redistribute it and/or modify it under the terms of the GNU General
// Public License as published by the Free Software Foundation, either
// version 3 of the License, or (at your option) any later version.
//
// The Alpha Centauri Farming project 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 General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with the Alpha Centauri Farming project.  If not, see
// <https://www.gnu.org/licenses/>.

import { SET_START_GAMES, START_OR_JOIN_GAME, SET_USER, SET_OPEN_GAMES,
         SET_ERRORS } from './actionTypes.js'
import { SCREENS } from '../../constants.js'

const initialState = {
    start: { games: [],
             openGames: [],
             errors: [],
             user: false },
    msg: null
};

export default function(state = initialState, action) {
    switch (action.type) {
    case SET_START_GAMES:
        return { ...state, start: { ...state.start, games: action.games }};
    case SET_OPEN_GAMES:
        return { ...state, start: { ...state.start, openGames: action.games }};
    case SET_USER:
        return { ...state, start: { ...state.start, user: action.user }};
    case SET_ERRORS:
        return { ...state, start: { ...state.start, errors: action.errors }};
    case START_OR_JOIN_GAME:
        return { ...state, msg: action.msg };
    default:
        return state;
    }
}

