From 6f44d469a50b7e27559385a0e249813d30f187ba Mon Sep 17 00:00:00 2001 From: "Rob Swindell (on Windows 11)" <rob@synchro.net> Date: Thu, 5 Sep 2024 19:52:07 -0700 Subject: [PATCH] Create system.tz_offset property; minutes east (+) or west (-) of UTC From todo list on Vertrauen, not in GitLab (shrug) --- src/sbbs3/js_system.c | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/src/sbbs3/js_system.c b/src/sbbs3/js_system.c index f43888b04a..be6d5270d9 100644 --- a/src/sbbs3/js_system.c +++ b/src/sbbs3/js_system.c @@ -47,6 +47,7 @@ enum { ,SYS_PROP_INETADDR ,SYS_PROP_LOCATION ,SYS_PROP_TIMEZONE + ,SYS_PROP_TZ_OFFSET ,SYS_PROP_PWDAYS ,SYS_PROP_MINPWLEN ,SYS_PROP_MAXPWLEN @@ -169,6 +170,10 @@ static JSBool js_system_get(JSContext *cx, JSObject *obj, jsid id, jsval *vp) sys_timezone(cfg); *vp = INT_TO_JSVAL(cfg->sys_timezone); break; + case SYS_PROP_TZ_OFFSET: + sys_timezone(cfg); + *vp = INT_TO_JSVAL(smb_tzutc(cfg->sys_timezone)); + break; case SYS_PROP_NODES: *vp = INT_TO_JSVAL(cfg->sys_nodes); break; @@ -437,7 +442,10 @@ static jsSyncPropertySpec js_system_properties[] = { ,JSDOCSTR("Location (city, state)") }, { "timezone", SYS_PROP_TIMEZONE, SYSOBJ_FLAGS, 310 - ,JSDOCSTR("Timezone (use <i>system.zonestr()</i> to get string representation)") + ,JSDOCSTR("Local timezone in SMB format (use <i>system.zonestr()</i> to get string representation)") + }, + { "tz_offset", SYS_PROP_TZ_OFFSET, SYSOBJ_FLAGS, 320 + ,JSDOCSTR("Local timezone offset, in minutes, from UTC (negative values represent zones <i>west</i> of UTC, positive values represent zones <i>east</i> of UTC)") }, { "pwdays", SYS_PROP_PWDAYS, SYSOBJ_FLAGS, 310 ,JSDOCSTR("Days between forced user password changes (<tt>0</tt>=<i>never</i>)") -- GitLab