Synchronet v3.19b-Win32 (install) has been released (Jan-2022).

You can donate to the Synchronet project using PayPal.

This is an old revision of the document!


webv4 Configuration

The optional webv4 user interface is located in the webv4/ directory and is available from the git repository.

Enabling webv4

To enable webv4, edit sbbs.ini so that the RootDirectory key under the [Web] section points to ../webv4/root. You'll also want to ensure that index.xjs is included in your list of IndexFileNames:

sbbs.ini

[Web]
RootDirectory=../webv4/root
IndexFileNames=index.html,index.ssjs,index.xjs

You should also verify that the XJS handler is enabled in the [JavaScript] section of ctrl/web_handler.ini. (This should be true except on very old Synchronet installs.)

ctrl/web_handler.ini

[JavaScript]
xjs = xjs_handler.js

To disable webv4 (or switch back to the old web UI), edit sbbs.ini and set the value of RootDirectory back to what it was before (eg. ../web).

Configuring webv4

webv4's settings are contained in the [web] section of ctrl/modopts.ini.

Shown below are the default values. If your ctrl/modopts.ini file does not have a [web] section, or is missing one of these values, the default will be used.

ctrl/modopts.ini

[web]
; Unauthenticated visitors will be logged in as the user with this alias
; (Only give this user privileges you want unknown web visitors to have)
guest = Guest
; Login sessions expire after this many seconds of inactivity
timeout = 43200
; Web-based users disappear from the "Who's online" list after this many seconds
inactivity = 900
; Allow new users to register via the web interface (default: no)
user_registration = false
; Enforce a minimum password length if user_registration is true
; (This should probably '8', which is also Synchronet's unfortunate maximum.)
minimum_password_length = 6
; Limit the length of a telegram (in characters) that a web user can send
maximum_telegram_length = 800
; Where (absolute or relative to 'exec') the 'lib' and 'root' directories live
web_directory = ../webv4
; Enable ftelnet / display on Home page
ftelnet = true
; Path to a .ans file to use as the ftelnet splash screen
ftelnet_splash = ../text/synch.ans
; Display the fTelnet menu bar / buttons?
ftelnet_menubar = false
; Use an fTelnet variant with RIP support?
ftelnet_rip = false
; Use an fTelnet variant with YModem G file transfer support?
ftelnet_xfer = false
; Enable or disable keyboard navigation in message threads
keyboard_navigation = false
; Display upvote/downvote buttons in message threads (3.17)
vote_functions = true
; Refresh nodelist, vote counts, etc. this often (in milliseconds)
refresh_interval = 60000
; External Programs (or entire sections) to exclude from the Games page
xtrn_blacklist = scfg,oneliner
; Disable the sidebar altogether
layout_sidebar_off = false
; Place the sidebar on the left-hand side of the page
layout_sidebar_left = false
; Make the page consume the entire width of the browser window
layout_full_width = false
; Only show active nodes in the sidebar, hide Who's Online if nobody is
active_node_list = true
; Don't show lame stats in the sidebar (no calls today, etc.)
hide_empty_stats = true
; The localization settings to use (web/lib/locale/*.[ini,js])
locale = en_us
; Use extended-ASCII characters when displaying forum messages (default: true)
forum_extended_ascii = true
; Only load this many messages from each sub (default: 0 for all)
max_messages = 0
; On the Files page, display a file's contents in the browser when possible
; Known filetypes are in ctrl/mime_types.ini
; Enable with caution due to security implications (eg. user-uploaded HTML files)
files_inline = false

New User Values

If you enabled user_registration above, new users can sign up via your website. If you want to apply a special security level, flags, exemptions, or restrictions to these users, you can add any or all of the following settings to the [web] section of ctrl/modopts.ini:

ctrl/modopts.ini

; Users who register via the web are given this security level:
newuser_level = 0
; Users who register via the web are given these flags / exemptions / restrictions:
newuser_flags1 = ABCDEFGHIJKLMNOPQRSTUVWXYZ
newuser_flags2 = ABCDEFGHIJKLMNOPQRSTUVWXYZ
newuser_flags3 = ABCDEFGHIJKLMNOPQRSTUVWXYZ
newuser_flags4 = ABCDEFGHIJKLMNOPQRSTUVWXYZ
newuser_exemptions = ABCDEFGHIJKLMNOPQRSTUVWXYZ
newuser_restrictions = ABCDEFGHIJKLMNOPQRSTUVWXYZ

If these settings are absent, then the system defaults (as set in scfg) will be used.

Optional settings

Advanced settings are available but not included by default. These are:

ctrl/modopts.ini

; Text to use in place of system name at top of page (HTML is okay here)
brand = <img src="/images/my-bbs-logo.png">
; Override WS and WSS (websocket, websocket-secure) service ports
; (Will be looked up from services.ini otherwise, via exec/load/ftelnethelper.js)
wsp = 1123
wssp = 11235

Only include these settings if you wish to override the built-in defaults.

* Setting forum_extended_ascii to false may resolve problems with displaying UTF-8 encoded characters; character codes > 127 will not be assumed to be extended-ASCII references to CP437 characters.

* Tweaking the `max_messages` setting may help if you get _out of memory_ errors or find your site being hit hard by bots / search indexers.

See Also