From 8d75df244dc281022bc352b0762b07106637e50c Mon Sep 17 00:00:00 2001 From: "Jesse C. Fisher" Date: Thu, 24 Oct 2019 19:43:57 -0700 Subject: [PATCH] =?UTF-8?q?Fix=20sit=20stan=C4=91=20seat=20player=20logic?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/models/seat.rb | 17 ++++++++++++++--- app/models/user.rb | 6 +----- 2 files changed, 15 insertions(+), 8 deletions(-) diff --git a/app/models/seat.rb b/app/models/seat.rb index cdd64a42..525f5c38 100644 --- a/app/models/seat.rb +++ b/app/models/seat.rb @@ -12,9 +12,17 @@ class Seat < ActiveRecord::Base current_user.stand_from(self.table) self.reload - self.player_id = self.table.current_game.add_player_from_user(current_user).id + if self.player == nil + self.player_id = self.table.current_game.add_player_from_user(current_user).id + end + + self.player.user_id = current_user.id + self.player.soft_token = current_user.soft_token + self.player.save + self.user_id = current_user.id self.user_soft_token = current_user.soft_token + return self.save end end @@ -23,10 +31,13 @@ class Seat < ActiveRecord::Base unless self.occupied_by?(user) return "Error. Seat not occupied by you." else - self.table.current_game.remove_player_from_user(user) + # self.table.current_game.remove_player_from_user(user) + self.player.user = nil + self.player.soft_token = nil + self.player.save self.user_id = nil self.user_soft_token = nil - self.player_id = nil + # self.player_id = nil self.save return "Successfully stood up." end diff --git a/app/models/user.rb b/app/models/user.rb index d0dd12e5..33dbd38e 100644 --- a/app/models/user.rb +++ b/app/models/user.rb @@ -33,11 +33,7 @@ class User < ActiveRecord::Base @seats << table.seats.where(user_soft_token: self.soft_token) end @seats.flatten.each do |seat| - seat.try(:player).try(:destroy) - seat.user_id = nil - seat.player_id = nil - seat.user_soft_token = nil - seat.save + seat.stand(self) end end