From 8d1418c8c075ed4c03057f734dc74459f0e3d3fe Mon Sep 17 00:00:00 2001 From: tech62 Date: Tue, 24 Sep 2019 00:31:01 +0200 Subject: [PATCH 1/4] GOTV Button, Field on Matches, Match detail and --- get5/models.py | 8 +++++++- get5/server.py | 7 ++++++- get5/templates/match.html | 1 + get5/templates/matches.html | 9 +++++++++ get5/templates/server_create.html | 8 ++++++++ 5 files changed, 31 insertions(+), 2 deletions(-) diff --git a/get5/models.py b/get5/models.py index 694f238..95213c8 100644 --- a/get5/models.py +++ b/get5/models.py @@ -53,17 +53,19 @@ class GameServer(db.Model): display_name = db.Column(db.String(32), default='') ip_string = db.Column(db.String(32)) port = db.Column(db.Integer) + portgotv = db.Column(db.Integer, default='') rcon_password = db.Column(db.String(32)) in_use = db.Column(db.Boolean, default=False) public_server = db.Column(db.Boolean, default=False, index=True) @staticmethod - def create(user, display_name, ip_string, port, rcon_password, public_server): + def create(user, display_name, ip_string, port, portgotv, rcon_password, public_server): rv = GameServer() rv.user_id = user.id rv.display_name = display_name rv.ip_string = ip_string rv.port = port + rv.portgotv = portgotv rv.rcon_password = rcon_password rv.public_server = public_server db.session.add(rv) @@ -76,6 +78,10 @@ def send_rcon_command(self, command, raise_errors=False, num_retries=3, timeout= def get_hostport(self): return '{}:{}'.format(self.ip_string, self.port) + + def get_hostportgotv(self): + return '{}:{}'.format(self.ip_string, self.portgotv) + def get_display(self): if self.display_name: diff --git a/get5/server.py b/get5/server.py index 2e0d7ea..2721b8d 100644 --- a/get5/server.py +++ b/get5/server.py @@ -23,6 +23,9 @@ class ServerForm(Form): port = IntegerField('Server port', default=27015, validators=[validators.required()]) + + portgotv = IntegerField('GOTV Server port', default=27020, + validators=[validators.optional()]) rcon_password = StringField('RCON password', validators=[ @@ -52,7 +55,7 @@ def server_create(): data = form.data server = GameServer.create(g.user, data['display_name'], - data['ip_string'], data['port'], + data['ip_string'], data['port'], data['portgotv'], data['rcon_password'], data['public_server'] and g.user.admin) @@ -83,6 +86,7 @@ def server_edit(serverid): display_name=server.display_name, ip_string=server.ip_string, port=server.port, + portgotv=server.portgotv, rcon_password=server.rcon_password, public_server=server.public_server) @@ -94,6 +98,7 @@ def server_edit(serverid): server.display_name = data['display_name'] server.ip_string = data['ip_string'] server.port = data['port'] + server.portgotv = data['portgotv'] server.rcon_password = data['rcon_password'] server.public_server = (data['public_server'] and g.user.admin) diff --git a/get5/templates/match.html b/get5/templates/match.html index d5daf32..b250f24 100644 --- a/get5/templates/match.html +++ b/get5/templates/match.html @@ -116,6 +116,7 @@

{% else %} diff --git a/get5/templates/matches.html b/get5/templates/matches.html index fca06ec..4b63b82 100644 --- a/get5/templates/matches.html +++ b/get5/templates/matches.html @@ -28,6 +28,11 @@

{% else %} Owner {% endif %} + + {% if all_matches %} + GOTV + {% endif %} + @@ -60,6 +65,10 @@

{% else %} {{ match.get_user().name }} {% endif %} + + {% if all_matches %} + Join as PlayerWatch on GOTV + {% endif %} {% endfor %} diff --git a/get5/templates/server_create.html b/get5/templates/server_create.html index 6f476af..92c0282 100644 --- a/get5/templates/server_create.html +++ b/get5/templates/server_create.html @@ -47,6 +47,14 @@

Your server information will not be exposed to other users.

+ +
+ {{ form.portgotv.label(class="col-sm-2 control-label") }} +
+ {{ form.portgotv(class="form-control", placeholder="27020") }} +
+
+ {% if is_admin %}
From 7ce4df9b9feff452c5cda6b69a4efc006d213990 Mon Sep 17 00:00:00 2001 From: tech62 Date: Tue, 24 Sep 2019 00:31:01 +0200 Subject: [PATCH 2/4] GOTV Button, Field on Matches, Match detail an DB --- get5/models.py | 8 +++++++- get5/server.py | 7 ++++++- get5/templates/match.html | 1 + get5/templates/matches.html | 9 +++++++++ get5/templates/server_create.html | 8 ++++++++ 5 files changed, 31 insertions(+), 2 deletions(-) diff --git a/get5/models.py b/get5/models.py index 694f238..95213c8 100644 --- a/get5/models.py +++ b/get5/models.py @@ -53,17 +53,19 @@ class GameServer(db.Model): display_name = db.Column(db.String(32), default='') ip_string = db.Column(db.String(32)) port = db.Column(db.Integer) + portgotv = db.Column(db.Integer, default='') rcon_password = db.Column(db.String(32)) in_use = db.Column(db.Boolean, default=False) public_server = db.Column(db.Boolean, default=False, index=True) @staticmethod - def create(user, display_name, ip_string, port, rcon_password, public_server): + def create(user, display_name, ip_string, port, portgotv, rcon_password, public_server): rv = GameServer() rv.user_id = user.id rv.display_name = display_name rv.ip_string = ip_string rv.port = port + rv.portgotv = portgotv rv.rcon_password = rcon_password rv.public_server = public_server db.session.add(rv) @@ -76,6 +78,10 @@ def send_rcon_command(self, command, raise_errors=False, num_retries=3, timeout= def get_hostport(self): return '{}:{}'.format(self.ip_string, self.port) + + def get_hostportgotv(self): + return '{}:{}'.format(self.ip_string, self.portgotv) + def get_display(self): if self.display_name: diff --git a/get5/server.py b/get5/server.py index 2e0d7ea..2721b8d 100644 --- a/get5/server.py +++ b/get5/server.py @@ -23,6 +23,9 @@ class ServerForm(Form): port = IntegerField('Server port', default=27015, validators=[validators.required()]) + + portgotv = IntegerField('GOTV Server port', default=27020, + validators=[validators.optional()]) rcon_password = StringField('RCON password', validators=[ @@ -52,7 +55,7 @@ def server_create(): data = form.data server = GameServer.create(g.user, data['display_name'], - data['ip_string'], data['port'], + data['ip_string'], data['port'], data['portgotv'], data['rcon_password'], data['public_server'] and g.user.admin) @@ -83,6 +86,7 @@ def server_edit(serverid): display_name=server.display_name, ip_string=server.ip_string, port=server.port, + portgotv=server.portgotv, rcon_password=server.rcon_password, public_server=server.public_server) @@ -94,6 +98,7 @@ def server_edit(serverid): server.display_name = data['display_name'] server.ip_string = data['ip_string'] server.port = data['port'] + server.portgotv = data['portgotv'] server.rcon_password = data['rcon_password'] server.public_server = (data['public_server'] and g.user.admin) diff --git a/get5/templates/match.html b/get5/templates/match.html index d5daf32..b250f24 100644 --- a/get5/templates/match.html +++ b/get5/templates/match.html @@ -116,6 +116,7 @@

{% else %} diff --git a/get5/templates/matches.html b/get5/templates/matches.html index fca06ec..4b63b82 100644 --- a/get5/templates/matches.html +++ b/get5/templates/matches.html @@ -28,6 +28,11 @@

{% else %} Owner {% endif %} + + {% if all_matches %} + GOTV + {% endif %} + @@ -60,6 +65,10 @@

{% else %} {{ match.get_user().name }} {% endif %} + + {% if all_matches %} + Join as PlayerWatch on GOTV + {% endif %} {% endfor %} diff --git a/get5/templates/server_create.html b/get5/templates/server_create.html index 6f476af..92c0282 100644 --- a/get5/templates/server_create.html +++ b/get5/templates/server_create.html @@ -47,6 +47,14 @@

Your server information will not be exposed to other users.

+ +
+ {{ form.portgotv.label(class="col-sm-2 control-label") }} +
+ {{ form.portgotv(class="form-control", placeholder="27020") }} +
+
+ {% if is_admin %}
From 0b364cd6998aad76f5429bad773a67c31a6b6a63 Mon Sep 17 00:00:00 2001 From: tech62 <16237642+tech62@users.noreply.github.com> Date: Tue, 5 Nov 2019 17:59:26 +0100 Subject: [PATCH 3/4] Update tests to integrate gotvport --- get5/get5_test.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/get5/get5_test.py b/get5/get5_test.py index aa25f9e..9f84ee5 100644 --- a/get5/get5_test.py +++ b/get5/get5_test.py @@ -36,7 +36,7 @@ def create_test_data(self): team2 = Team.create(user, 'Fnatic', 'Fnatic', 'se', 'fntc', ['76561198053858673']) server = GameServer.create( - user, 'myserver1', '127.0.0.1', '27015', 'password', False) + user, 'myserver1', '127.0.0.1', '27015', '27020','password', False) server.in_use = True GameServer.create( From 1f6e6bf89adde27ccf2061a623590750fa9d0dce Mon Sep 17 00:00:00 2001 From: tech62 <16237642+tech62@users.noreply.github.com> Date: Tue, 5 Nov 2019 18:03:12 +0100 Subject: [PATCH 4/4] Update tests for GOTV Port --- get5/get5_test.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/get5/get5_test.py b/get5/get5_test.py index 9f84ee5..8b77424 100644 --- a/get5/get5_test.py +++ b/get5/get5_test.py @@ -40,7 +40,7 @@ def create_test_data(self): server.in_use = True GameServer.create( - user, 'myserver2', '127.0.0.1', '27016', 'password', True) + user, 'myserver2', '127.0.0.1', '27016', '27020','password', True) db.session.commit() Match.create(user, team1.id, team2.id, '', '', 1, False,