// Add a new group to the control system, or print an error message to the touchpanel
 public bool AddNewGroup(string groupName, Authentication.UserAuthenticationLevelEnum accessLevel)
 {
     try
     {
         if (!AdminCheck(adminToken))
         {
             panel.StringInput[SerialInputJoins.AddNewGroupErrMsg].StringValue =
                 "You do not have sufficient access to perform this operation";
             return(false);
         }
         if (!isAccessLevelChosen)
         {
             panel.StringInput[SerialInputJoins.AddNewGroupErrMsg].StringValue =
                 "You must choose an access level for this new group";
             return(false);
         }
         CrestronConsole.PrintLine("Creating group {0} with access level {1} ({2})...\r\n", groupName, accessLevel, (Int32)accessLevel);
         if (Authentication.AddGroupToSystem(ref adminToken, groupName, accessLevel))
         {
             CrestronConsole.PrintLine("Group \"{0}\" added", groupName);
             return(true);
         }
         panel.StringInput[SerialInputJoins.AddNewGroupErrMsg].StringValue =
             String.Format("Group \"{0}\" could not be added", groupName);
         CrestronConsole.PrintLine("Group \"{0}\" could not be added", groupName);
         return(false);
     }
     catch (Exception e)
     {
         WriteError("AddNewGroup", e, SerialInputJoins.AddNewGroupErrMsg);
         return(false);
     }
     finally
     {
     }
 }