From df7650879824e939f91dc5fdb575d4af1c82dfbe Mon Sep 17 00:00:00 2001
From: rswindell <>
Date: Sun, 25 Feb 2018 23:10:38 +0000
Subject: [PATCH] Added sysop chat availability toggle to the System Toggle
 menu: creates/deletes the file: ctrl/sysavail.chat

---
 src/sbbs3/umonitor/umonitor.c | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/src/sbbs3/umonitor/umonitor.c b/src/sbbs3/umonitor/umonitor.c
index 67888348c4..29a42805d6 100644
--- a/src/sbbs3/umonitor/umonitor.c
+++ b/src/sbbs3/umonitor/umonitor.c
@@ -1039,6 +1039,9 @@ int main(int argc, char** argv)  {
 		}
 
 		if(j==0) {
+			BOOL sysop_avail = sysop_available(&cfg);
+			int sysop_chat_opt;
+
 			/* System Options */
 			i=0;
 			strcpy(opt[i++],"Run SCFG");
@@ -1050,6 +1053,7 @@ int main(int argc, char** argv)  {
 			strcpy(opt[i++],"Recycle servers");
 			strcpy(opt[i++],"Edit CFG/INI files");
 			strcpy(opt[i++],"Edit trashcan files");
+			sysop_chat_opt = i++;
 			opt[i][0]=0;
 			uifc.helpbuf=	"`System Options`\n"
 			                "`------------`\n\n"
@@ -1069,6 +1073,7 @@ int main(int argc, char** argv)  {
 			done=0;
 			i=0;
 			while(!done) {
+				sprintf(opt[sysop_chat_opt], "Turn Sysop Chat availability %s", sysop_avail ? "Off" : "On");
 				switch(uifc.list(WIN_MID|WIN_SAV,0,0,0,&i,0,"System Options",opt))  {
 					case -1:
 						done=1;
@@ -1118,6 +1123,10 @@ int main(int argc, char** argv)  {
 					case 8:
 						edit_can(&cfg);
 						break;
+					case 9:
+						sysop_avail = !sysop_avail;
+						set_sysop_availability(&cfg, sysop_avail);
+						break;
 				}
 			}
 			continue;
-- 
GitLab