diff --git a/src/controllers/modals/components/CreateInvite.tsx b/src/controllers/modals/components/CreateInvite.tsx
index d9901a84..10927a5e 100644
--- a/src/controllers/modals/components/CreateInvite.tsx
+++ b/src/controllers/modals/components/CreateInvite.tsx
@@ -37,6 +37,7 @@ export default function CreateInvite({
}: ModalProps<"create_invite">) {
const [processing, setProcessing] = useState(false);
const [code, setCode] = useState("abcdef");
+ const [url, setUrl] = useState("abcdef");
// Generate an invite code
useEffect(() => {
@@ -44,7 +45,10 @@ export default function CreateInvite({
target
.createInvite()
- .then(({ _id }) => setCode(_id))
+ .then((res) => {
+ setUrl(res.url || "default_url");
+ setCode(res._id || "default_code");
+ })
.catch((err) =>
modalController.push({ type: "error", error: takeError(err) }),
)
@@ -65,7 +69,7 @@ export default function CreateInvite({
) : (
- https://{window.location.host}/invite/{code}
+ {url}
),
},
@@ -79,11 +83,10 @@ export default function CreateInvite({
children: ,
onClick: () =>
modalController.writeText(
- `https://${window.location.host}/invite/${code}`
+ `${url}`
),
},
]}
/>
);
}
-
diff --git a/src/pages/channels/Channel.tsx b/src/pages/channels/Channel.tsx
index 93b5a554..32418e39 100644
--- a/src/pages/channels/Channel.tsx
+++ b/src/pages/channels/Channel.tsx
@@ -99,9 +99,10 @@ export const Channel = observer(
({ id, server_id }: { id: string; server_id: string }) => {
const client = useClient();
const state = useApplicationState();
- if (!client.channels.get(id)) {
+
+ if (!client.channels.exists(id) && server_id) {
if (server_id) {
- const server = client.servers.get(server_id);
+ const server = client.servers.get(server_id);
if (server && server.channel_ids.length > 0) {
let target_id = server.channel_ids[0];
const last_id = state.layout.getLastOpened(server_id);