diff --git a/src/sbbs3/js_bbs.cpp b/src/sbbs3/js_bbs.cpp index bff9f9f5fe31c2b075a95744988e6ae37cd3bed3..56873369a9b8df6d9685cf5f4c8ce59f864fa221 100644 --- a/src/sbbs3/js_bbs.cpp +++ b/src/sbbs3/js_bbs.cpp @@ -75,8 +75,10 @@ enum { ,BBS_PROP_CURGRP ,BBS_PROP_CURSUB + ,BBS_PROP_CURSUB_CODE ,BBS_PROP_CURLIB ,BBS_PROP_CURDIR + ,BBS_PROP_CURDIR_CODE ,BBS_PROP_CONNECTION /* READ ONLY */ ,BBS_PROP_RLOGIN_NAME @@ -172,8 +174,10 @@ enum { ,"current message group" ,"current message sub-board" + ,"current message sub-board internal code" ,"current file library" ,"current file directory" + ,"current file directory internal code" ,"remote connection type" ,"rlogin name" @@ -339,6 +343,11 @@ static JSBool js_bbs_get(JSContext *cx, JSObject *obj, jsval id, jsval *vp) if(sbbs->curgrp<sbbs->usrgrps) val=sbbs->cursub[sbbs->curgrp]; break; + case BBS_PROP_CURSUB_CODE: + if(sbbs->cursubnum<sbbs->cfg.total_subs) + p=sbbs->cfg.sub[sbbs->cursubnum]->code; + break; + case BBS_PROP_CURLIB: val=sbbs->curlib; break; @@ -346,6 +355,10 @@ static JSBool js_bbs_get(JSContext *cx, JSObject *obj, jsval id, jsval *vp) if(sbbs->curlib<sbbs->usrlibs) val=sbbs->curdir[sbbs->curlib]; break; + case BBS_PROP_CURDIR_CODE: + if(sbbs->curdirnum<sbbs->cfg.total_dirs) + p=sbbs->cfg.dir[sbbs->curdirnum]->code; + break; case BBS_PROP_CONNECTION: p=sbbs->connection; @@ -705,6 +718,7 @@ static JSBool js_bbs_set(JSContext *cx, JSObject *obj, jsval id, jsval *vp) sbbs->curgrp=val; break; case BBS_PROP_CURSUB: + case BBS_PROP_CURSUB_CODE: if(p!=NULL) { /* set by code */ for(uint i=0;i<sbbs->usrgrps;i++) for(uint j=0;j<sbbs->usrsubs[i];j++) @@ -732,6 +746,7 @@ static JSBool js_bbs_set(JSContext *cx, JSObject *obj, jsval id, jsval *vp) sbbs->curlib=val; break; case BBS_PROP_CURDIR: + case BBS_PROP_CURDIR_CODE: if(p!=NULL) { /* set by code */ for(uint i=0;i<sbbs->usrlibs;i++) for(uint j=0;j<sbbs->usrdirs[i];j++) @@ -812,8 +827,10 @@ static jsSyncPropertySpec js_bbs_properties[] = { { "file_cmds" ,BBS_PROP_FILE_CMDS ,JSPROP_ENUMERATE ,310}, { "curgrp" ,BBS_PROP_CURGRP ,JSPROP_ENUMERATE ,310}, { "cursub" ,BBS_PROP_CURSUB ,JSPROP_ENUMERATE ,310}, + { "cursub_code" ,BBS_PROP_CURSUB_CODE ,JSPROP_ENUMERATE ,31301}, { "curlib" ,BBS_PROP_CURLIB ,JSPROP_ENUMERATE ,310}, { "curdir" ,BBS_PROP_CURDIR ,JSPROP_ENUMERATE ,310}, + { "curdir_code" ,BBS_PROP_CURDIR_CODE ,JSPROP_ENUMERATE ,31301}, { "connection" ,BBS_PROP_CONNECTION ,PROP_READONLY ,310}, { "rlogin_name" ,BBS_PROP_RLOGIN_NAME ,JSPROP_ENUMERATE ,310}, { "client_name" ,BBS_PROP_CLIENT_NAME ,JSPROP_ENUMERATE ,310},