Skip to content
Snippets Groups Projects
Commit 9ddfcbe5 authored by Felix Schäfer's avatar Felix Schäfer :construction_worker:
Browse files

Handle empty configuration

parent e50d2b6c
No related branches found
No related tags found
No related merge requests found
...@@ -61,7 +61,9 @@ class MatrixInviterForm(SettingsForm): ...@@ -61,7 +61,9 @@ class MatrixInviterForm(SettingsForm):
] ]
room_info = matrix_room_info_for_event(self.obj) room_info = matrix_room_info_for_event(self.obj)
if self.obj.settings.matrix_inviter_matrix_room.startswith("!"): if not room_info["room_id"]:
room_help_text = ""
elif self.obj.settings.matrix_inviter_matrix_room.startswith("!"):
if room_info["canonical_alias"]: if room_info["canonical_alias"]:
room_help_text = _( room_help_text = _(
'"{name}" (main address: <code>{canonical_alias}</code>)' '"{name}" (main address: <code>{canonical_alias}</code>)'
......
...@@ -27,13 +27,18 @@ def matrix_room_info(server, token, room_id_or_alias): ...@@ -27,13 +27,18 @@ def matrix_room_info(server, token, room_id_or_alias):
def matrix_room_id(server, room_id_or_alias): def matrix_room_id(server, room_id_or_alias):
if room_id_or_alias.startswith("!"): if not server or not room_id_or_alias:
return ""
elif room_id_or_alias.startswith("!"):
return room_id_or_alias return room_id_or_alias
else: else:
return matrix_room_id_from_alias(server, room_id_or_alias) return matrix_room_id_from_alias(server, room_id_or_alias)
def matrix_room_id_from_alias(server, alias): def matrix_room_id_from_alias(server, alias):
if not server or not alias:
return ""
r = requests.get( r = requests.get(
"https://{}/_matrix/client/v3/directory/room/{}".format( "https://{}/_matrix/client/v3/directory/room/{}".format(
url_quote(server), url_quote(server),
...@@ -45,6 +50,9 @@ def matrix_room_id_from_alias(server, alias): ...@@ -45,6 +50,9 @@ def matrix_room_id_from_alias(server, alias):
def matrix_room_canonical_alias_from_id(server, token, room_id): def matrix_room_canonical_alias_from_id(server, token, room_id):
if not server or not token or not room_id:
return ""
r = requests.get( r = requests.get(
"https://{}/_matrix/client/v3/rooms/{}/state/m.room.canonical_alias".format( "https://{}/_matrix/client/v3/rooms/{}/state/m.room.canonical_alias".format(
url_quote(server), url_quote(server),
...@@ -59,6 +67,9 @@ def matrix_room_canonical_alias_from_id(server, token, room_id): ...@@ -59,6 +67,9 @@ def matrix_room_canonical_alias_from_id(server, token, room_id):
def matrix_room_name_from_id(server, token, room_id): def matrix_room_name_from_id(server, token, room_id):
if not server or not token or not room_id:
return ""
r = requests.get( r = requests.get(
"https://{}/_matrix/client/v3/rooms/{}/state/m.room.name".format( "https://{}/_matrix/client/v3/rooms/{}/state/m.room.name".format(
url_quote(server), url_quote(server),
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment