From 0243912790ce4db366dd07446043d103298954e2 Mon Sep 17 00:00:00 2001 From: Diego Mello Date: Tue, 28 Jul 2020 14:17:23 -0300 Subject: [PATCH 1/3] Stop accepting HTTP and show changes on server URL TextInput --- app/views/NewServerView.js | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/app/views/NewServerView.js b/app/views/NewServerView.js index 5d2726cdd63..71c184fc8ec 100644 --- a/app/views/NewServerView.js +++ b/app/views/NewServerView.js @@ -133,8 +133,8 @@ class NewServerView extends React.Component { handleNewServerEvent = (event) => { let { server } = event; const { connectServer } = this.props; - this.setState({ text: server }); server = this.completeUrl(server); + this.setState({ text: server }); connectServer(server); } @@ -163,6 +163,7 @@ class NewServerView extends React.Component { if (text) { Keyboard.dismiss(); const server = this.completeUrl(text); + this.setState({ text: server }); await this.basicAuth(server, text); connectServer(server, cert); } @@ -230,6 +231,8 @@ class NewServerView extends React.Component { url = `http://${ url }`; } else if (/^https?:\/\//.test(url) === false) { url = `https://${ url }`; + } else if (/^http:\/\//.test(url)) { + url = url.replace('http://', 'https://'); } } From f86a69d8fc1ce20231fd89f721d1dff654a384c7 Mon Sep 17 00:00:00 2001 From: Diego Mello Date: Tue, 28 Jul 2020 16:08:22 -0300 Subject: [PATCH 2/3] Enforce https on host notification --- app/sagas/deepLinking.js | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/app/sagas/deepLinking.js b/app/sagas/deepLinking.js index ffa04040f1b..d42e202c61d 100644 --- a/app/sagas/deepLinking.js +++ b/app/sagas/deepLinking.js @@ -63,7 +63,9 @@ const handleOpen = function* handleOpen({ params }) { let { host } = params; if (!/^(http|https)/.test(host)) { - host = `https://${ params.host }`; + host = `https://${ host }`; + } else { + host = host.replace('http://', 'https://'); } // remove last "/" from host if (host.slice(-1) === '/') { @@ -75,7 +77,6 @@ const handleOpen = function* handleOpen({ params }) { RNUserDefaults.get(`${ RocketChat.TOKEN_KEY }-${ host }`) ]); - // TODO: needs better test // if deep link is from same server if (server === host && user) { const connected = yield select(state => state.server.connected); From 9eccc17171a02029bb9b7d15ea2192b59bd370e4 Mon Sep 17 00:00:00 2001 From: Diego Mello Date: Tue, 28 Jul 2020 16:37:28 -0300 Subject: [PATCH 3/3] Comment dx --- app/views/NewServerView.js | 1 + 1 file changed, 1 insertion(+) diff --git a/app/views/NewServerView.js b/app/views/NewServerView.js index 71c184fc8ec..2f337f83e1b 100644 --- a/app/views/NewServerView.js +++ b/app/views/NewServerView.js @@ -226,6 +226,7 @@ class NewServerView extends React.Component { url = `${ url }.rocket.chat`; } + // Comment to test local server on Android device if (/^(https?:\/\/)?(((\w|[0-9-_])+(\.(\w|[0-9-_])+)+)|localhost)(:\d+)?$/.test(url)) { if (/^localhost(:\d+)?/.test(url)) { url = `http://${ url }`;