From 9372bb7c0492d1497f85e610237d18aefa7fb2c4 Mon Sep 17 00:00:00 2001 From: Elias Nahum Date: Wed, 3 Nov 2021 11:12:52 -0300 Subject: [PATCH] [Gekidou] Unique servers (#5798) * Disallow the same server from being added the twice * Add Default Server name config & EMM managed config * Update android/app/src/main/res/values/strings.xml Co-authored-by: Jason Frerich Co-authored-by: Jason Frerich --- .../com/mattermost/helpers/DatabaseHelper.kt | 3 +- android/app/src/main/res/values/strings.xml | 4 +- .../app/src/main/res/xml/app_restrictions.xml | 6 +++ app/queries/app/servers.ts | 7 ++- app/screens/server/form.tsx | 2 + app/screens/server/index.tsx | 46 +++++++++++++++---- assets/base/config.json | 1 + 7 files changed, 57 insertions(+), 12 deletions(-) diff --git a/android/app/src/main/java/com/mattermost/helpers/DatabaseHelper.kt b/android/app/src/main/java/com/mattermost/helpers/DatabaseHelper.kt index 2c9dd142bc..e4559e53db 100644 --- a/android/app/src/main/java/com/mattermost/helpers/DatabaseHelper.kt +++ b/android/app/src/main/java/com/mattermost/helpers/DatabaseHelper.kt @@ -174,7 +174,8 @@ class DatabaseHelper { if (lastId == key) { earliest = post.get("create_at") as Double - } else if (firstId == key) { + } + if (firstId == key) { latest = post.get("create_at") as Double } diff --git a/android/app/src/main/res/values/strings.xml b/android/app/src/main/res/values/strings.xml index 21de094db6..d1cf69ca59 100644 --- a/android/app/src/main/res/values/strings.xml +++ b/android/app/src/main/res/values/strings.xml @@ -9,7 +9,9 @@ Copy&Paste Protection Disable the ability to copy from or paste into any text inputs in the app. Mattermost Server URL - Set a default Mattermost server URL. + Set a default Server URL for your Mattermost instance. + Mattermost Server Name + Set a default Server Name for your Mattermost instance. Allow Other Servers Allow the user to change the above server URL. Default Username diff --git a/android/app/src/main/res/xml/app_restrictions.xml b/android/app/src/main/res/xml/app_restrictions.xml index 2287350b58..f391bb4a4e 100644 --- a/android/app/src/main/res/xml/app_restrictions.xml +++ b/android/app/src/main/res/xml/app_restrictions.xml @@ -37,6 +37,12 @@ android:description="@string/serverUrl_description" android:restrictionType="string" android:defaultValue="" /> + { + const servers = await queryAllServers(appDatabase); + const server = servers.find((s) => s.displayName.toLowerCase() === displayName.toLowerCase()); + return server; +}; + export const queryServerName = async (appDatabase: Database, serverUrl: string) => { try { const servers = (await appDatabase.get(SERVERS).query(Q.where('url', serverUrl)).fetch()); @@ -45,4 +51,3 @@ export const queryServerName = async (appDatabase: Database, serverUrl: string) return serverUrl; } }; - diff --git a/app/screens/server/form.tsx b/app/screens/server/form.tsx index cde00c41c7..4b34fd1191 100644 --- a/app/screens/server/form.tsx +++ b/app/screens/server/form.tsx @@ -191,12 +191,14 @@ const ServerForm = ({ value={displayName} /> + {!displayNameError && + }