def loadToModel(self, gameno, position, model=None): if not model: model = GameModel() # We have to set full move number to 1 to make sure LBoard and GameModel # are synchronized. # fenlist = self.games[gameno].split(" ") # if len(fenlist) == 6: # fen = " ".join(fenlist[:5]) + " 1" fen = self.games[gameno] try: board = model.variant(setup=fen) except SyntaxError as err: board = model.variant() raise LoadingError( _("The game can't be loaded, because of an error parsing FEN"), err.args[0]) model.boards = [board] model.variations = [model.boards] model.moves = [] if model.status == WAITING_TO_START: status, reason = getStatus(model.boards[-1]) if status in (BLACKWON, WHITEWON, DRAW): model.status, model.reason = status, reason return model
def loadToModel(self, gameno, position, model=None): if not model: model = GameModel() # We have to set full move number to 1 to make sure LBoard and GameModel # are synchronized. #fenlist = self.games[gameno].split(" ") #if len(fenlist) == 6: # fen = " ".join(fenlist[:5]) + " 1" fen = self.games[gameno] try: board = model.variant(setup=fen) except SyntaxError as err: board = model.variant() raise LoadingError( _("The game can't be loaded, because of an error parsing FEN"), err.args[0]) model.boards = [board] model.variations = [model.boards] model.moves = [] if model.status == WAITING_TO_START: status, reason = getStatus(model.boards[-1]) if status in (BLACKWON, WHITEWON, DRAW): model.status, model.reason = status, reason return model
def loadToModel(self, rec, position, model=None): if not model: model = GameModel() if self.fen_is_string: rec = self.games[0] if isinstance(rec, dict) and "Variant" in rec: model.variant = FischerandomBoard fen = self.games[0]["FEN"] try: board = model.variant(setup=fen) except SyntaxError as err: board = model.variant() raise LoadingError( _("The game can't be loaded, because of an error parsing FEN"), err.args[0]) model.boards = [board] model.variations = [model.boards] model.moves = [] if model.status == WAITING_TO_START: status, reason = getStatus(model.boards[-1]) if status in (BLACKWON, WHITEWON, DRAW): model.status, model.reason = status, reason return model
def loadToModel(self, rec, position, model=None): if not model: model = GameModel() if self.fen_is_string: rec = self.games[0] if "Variant" in rec: model.variant = FischerandomBoard fen = self.games[0]["FEN"] try: board = model.variant(setup=fen) except SyntaxError as err: board = model.variant() raise LoadingError( _("The game can't be loaded, because of an error parsing FEN"), err.args[0]) model.boards = [board] model.variations = [model.boards] model.moves = [] if model.status == WAITING_TO_START: status, reason = getStatus(model.boards[-1]) if status in (BLACKWON, WHITEWON, DRAW): model.status, model.reason = status, reason return model