diff --git a/src/sbbs3/js_xtrn_area.c b/src/sbbs3/js_xtrn_area.c
index 9b7559419be5c7802f1b19c06b4e73846a7c7a4b..620656e90e13a6672f46754ddee0ce0988604585 100644
--- a/src/sbbs3/js_xtrn_area.c
+++ b/src/sbbs3/js_xtrn_area.c
@@ -72,6 +72,7 @@ static char* xtrn_prog_prop_desc[] = {
 	,"extra time given to users running this program"
 	,"maximum time allowed in program"
 	,"execution cost (credits to run this program)"
+	,"user has sufficient access to see this program"
 	/* Insert here */
 	,"user has sufficient access to run this program"
 	,NULL
@@ -352,6 +353,13 @@ JSObject* DLLCALL js_CreateXtrnAreaObject(JSContext* cx, JSObject* parent, scfg_
 			if(!js_CreateXtrnProgProperties(cx, progobj, cfg->xtrn[d]))
 				return(NULL);
 
+			if(user==NULL || chk_ar(cfg,cfg->xtrn[d]->ar,user))
+				val=JSVAL_TRUE;
+			else
+				val=JSVAL_FALSE;
+			if(!JS_SetProperty(cx, progobj, "can_access", &val))
+				return(NULL);
+
 			if(user==NULL || chk_ar(cfg,cfg->xtrn[d]->run_ar,user))
 				val=JSVAL_TRUE;
 			else