From 511536a55618c67c1837f130c775f9e402ce1a25 Mon Sep 17 00:00:00 2001
From: usodhi <61431818+usodhi@users.noreply.github.com>
Date: Wed, 23 Sep 2020 18:14:56 +0530
Subject: override and one-click stuff

---
 src/client/util/GroupManager.tsx | 17 ++++++++++-------
 1 file changed, 10 insertions(+), 7 deletions(-)

(limited to 'src/client/util/GroupManager.tsx')

diff --git a/src/client/util/GroupManager.tsx b/src/client/util/GroupManager.tsx
index cb15b5081..cb512bca8 100644
--- a/src/client/util/GroupManager.tsx
+++ b/src/client/util/GroupManager.tsx
@@ -278,21 +278,24 @@ export class GroupManager extends React.Component<{}> {
      */
     @action
     createGroup = () => {
-        if (!this.inputRef.current?.value) {
+        const { value } = this.inputRef.current!;
+        if (!value) {
             alert("Please enter a group name");
             return;
         }
-        if (this.inputRef.current.value.toLowerCase() === "admin" && this.getGroup("Admin")) {
-            alert("You cannot override the Admin group");
-            return;
+        if (["admin", "public", "override"].includes(value.toLowerCase())) {
+            if (value.toLowerCase() !== "admin" || (value.toLowerCase() === "admin" && this.getGroup("Admin"))) {
+                alert(`You cannot override the ${value.charAt(0).toUpperCase() + value.slice(1)} group`);
+                return;
+            }
         }
-        if (this.getGroup(this.inputRef.current.value)) {
+        if (this.getGroup(value)) {
             alert("Please select a unique group name");
             return;
         }
-        this.createGroupDoc(this.inputRef.current.value, this.selectedUsers?.map(user => user.value));
+        this.createGroupDoc(value, this.selectedUsers?.map(user => user.value));
         this.selectedUsers = null;
-        this.inputRef.current.value = "";
+        this.inputRef.current!.value = "";
         this.buttonColour = "#979797";
 
         const { left, width, top } = this.createGroupButtonRef.current!.getBoundingClientRect();
-- 
cgit v1.2.3-70-g09d2

