]> de.git.xonotic.org Git - xonotic/xonstat.git/blobdiff - xonstat/models/game.py
Remove Persona since it was shut down. :(
[xonotic/xonstat.git] / xonstat / models / game.py
index 370d91f8131dc0af0cbf9b491225a45a293c6401..18cf9e8dc6be5f9839211d7a779aaec52623cebb 100644 (file)
@@ -2,18 +2,17 @@
 Models related to games.
 """
 
-from calendar import timegm
+from xonstat.models.mixins import FuzzyDateMixin, EpochMixin
+from xonstat.util import strip_colors, html_colors
 
-from xonstat.util import pretty_date, strip_colors, html_colors
 
-
-class Game(object):
+class Game(FuzzyDateMixin, EpochMixin):
     """
     An individual game.
     """
 
-    def __init__(self, game_id=None, start_dt=None, game_type_cd=None,
-            server_id=None, map_id=None, winner=None):
+    def __init__(self, game_id=None, start_dt=None, game_type_cd=None, server_id=None, map_id=None,
+                 winner=None):
         self.game_id = game_id
         self.start_dt = start_dt
         self.game_type_cd = game_type_cd
@@ -22,8 +21,7 @@ class Game(object):
         self.winner = winner
 
     def __repr__(self):
-        return ("<Game({}, {}, {}, {})>"
-                .format(self.game_id, self.start_dt, self.game_type_cd, self.server_id))
+        return "<Game({0.game_id}, {0.start_dt}, {0.game_type_cd}, {0.server_id})>".format(self)
 
     def to_dict(self):
         return {
@@ -33,12 +31,6 @@ class Game(object):
             'server_id': self.server_id
         }
 
-    def fuzzy_date(self):
-        return pretty_date(self.start_dt)
-
-    def epoch(self):
-        return timegm(self.start_dt.timetuple())
-
 
 class PlayerGameStat(object):
     """
@@ -50,7 +42,7 @@ class PlayerGameStat(object):
         self.create_dt = create_dt
 
     def __repr__(self):
-        return "<PlayerGameStat({}, {}, {})>".format(self.player_id, self.game_id, self.create_dt)
+        return "<PlayerGameStat({0.player_id}, {0.game_id}, {0.create_dt})>".format(self)
 
     def to_dict(self):
         return {
@@ -102,8 +94,8 @@ class PlayerWeaponStat(object):
         self.frags = 0
 
     def __repr__(self):
-        return ("<PlayerWeaponStat({}, {}, {})>"
-                .format(self.player_weapon_stats_id, self.player_id, self.game_id))
+        return ("<PlayerWeaponStat({0.player_weapon_stats_id}, {0.player_id}, {0.game_id})>"
+                .format(self))
 
     def to_dict(self):
         return {
@@ -129,7 +121,7 @@ class TeamGameStat(object):
         self.create_dt = create_dt
 
     def __repr__(self):
-        return "<TeamGameStat({}, {}, {})>".format(self.team_game_stat_id, self.game_id, self.team)
+        return "<TeamGameStat({0.team_game_stat_id}, {0.game_id}, {0.team})>".format(self)
 
     def to_dict(self):
         return {
@@ -167,7 +159,7 @@ class PlayerGameAnticheat(object):
         self.create_dt = create_dt
 
     def __repr__(self):
-        return "<PlayerGameAnticheat({}, {})>".format(self.key, self.value)
+        return "<PlayerGameAnticheat({0.key}, {0.value})>".format(self)
 
 
 class GameType(object):
@@ -176,7 +168,7 @@ class GameType(object):
     """
 
     def __repr__(self):
-        return "<GameType({}, {}, {})>".format(self.game_type_cd, self.descr, self.active_ind)
+        return "<GameType({0.game_type_cd}, {0.descr}, {0.active_ind})>".format(self)
 
     def to_dict(self):
         return {
@@ -192,7 +184,7 @@ class Weapon(object):
     """
 
     def __repr__(self):
-        return "<Weapon({}, {}, {})>".format(self.weapon_cd, self.descr, self.active_ind)
+        return "<Weapon({0.weapon_cd}, {0.descr}, {0.active_ind})>".format(self)
 
     def to_dict(self):
         return {