Populate server URL in fillConnectParams

This commit is contained in:
Simon Ser 2021-05-31 18:11:33 +02:00
parent 4fff2b1b8d
commit 04932317f6
2 changed files with 19 additions and 19 deletions

View File

@ -51,7 +51,23 @@ function parseQueryString() {
} }
function fillConnectParams(params) { function fillConnectParams(params) {
var host = window.location.host || "localhost:8080";
var proto = "wss:";
if (window.location.protocol != "https:") {
proto = "ws:";
}
var path = window.location.pathname || "/";
if (!window.location.host) {
path = "/";
}
params = { ...params }; params = { ...params };
if (!params.url) {
params.url = proto + "//" + host + path + "socket";
}
if (params.url.startsWith("/")) {
params.url = proto + "//" + host + params.url;
}
if (!params.username) { if (!params.username) {
params.username = params.nick; params.username = params.nick;
} }
@ -241,19 +257,7 @@ export default class App extends Component {
handleConfig(config) { handleConfig(config) {
this.config = config; this.config = config;
var host = window.location.host || "localhost:8080"; var connectParams = {};
var proto = "wss:";
if (window.location.protocol != "https:") {
proto = "ws:";
}
var path = window.location.pathname || "/";
if (!window.location.host) {
path = "/";
}
var connectParams = {
url: proto + "//" + host + path + "socket",
};
if (config.server) { if (config.server) {
connectParams.url = config.server.url; connectParams.url = config.server.url;
@ -275,11 +279,7 @@ export default class App extends Component {
var queryParams = parseQueryString(); var queryParams = parseQueryString();
if (queryParams.server) { if (queryParams.server) {
if (queryParams.server.startsWith("/")) { connectParams.url = queryParams.server;
connectParams.url = proto + "//" + host + queryParams.server;
} else {
connectParams.url = queryParams.server;
}
} }
if (queryParams.nick) { if (queryParams.nick) {
connectParams.nick = queryParams.nick; connectParams.nick = queryParams.nick;

View File

@ -103,7 +103,7 @@ export default class ConnectForm extends Component {
<label> <label>
Server URL:<br/> Server URL:<br/>
<input type="url" name="url" value=${this.state.url} disabled=${this.props.disabled} required/> <input type="text" name="url" value=${this.state.url} disabled=${this.props.disabled} inputmode="url"/>
</label> </label>
<br/><br/> <br/><br/>