Telegard Bulletin Board Software, v3.10
Revision History Documentation
Copyright (C) 1998 by Tim Strike
All Rights Reserved.
3.09 Gamma 2 Service Pack 3 - 22 August 1998
IMPORTANT
+ There is one important language change to this beta which
relates to new user logins. The new user login name can
now be defined to something other than "NEW". This is
configured on line 338 of your language file. Also note
the changes to line 341 to indicate the new MCI code for
new user logon id code.
MESSAGES
+ Public, private and netmail posts for a call are now stored
in the LASTON.DAT file.
* Internet email areas marked with anonymous type Realname/
Handle would only allow the user to read messages from one of
their two names (depending on whether the area defaulted to
Realname or Handle posting). Fixed.
* System Configuration for message areas was incorrect for
options H through K.
* Private message areas would allow reading of messages without
the private bit enabled for the message; a private area
should always be private regardless of the message flag
status... fixed.
* Quote header would be incorrectly output for internal line
editor messages (Telegard automatically handles this, so it
duplicates entries...)
* Upgrade notices for the New User Level will not been sent
when a user first applies to the system (the user isn't
valid yet; this caused empty destination messages). These
messages will only be sent for the second time that a user
is set to this level (i.e. automated downgrade, etc.). If
you want messages sent to your first-time callers, then I
suggest using the NEWUSER.SCR script to send them...
* Entering a non-existant path in the message area manager will
now warn you that the path doesn't exist; Telegard will no
longer attempt to move files to a non-existant path.
* Fixed up problem of sending a validation level letter from
the message read prompt which returned the wrong message
when attempting to redisplay the message from which the user
was validated.
* Messages already marked deleted will not be prompted with the
delete message query after a message reply.
* Continous message mode with email/netmail areas and a user
marked with must delete email/netmail flag would cause an
endless loop (until user hungup); continous mode will no
longer be allowed in such situations.
* Moving file attachments to a path and not creating that path
when prompted will now abort the file move.
FILES
+ Telegard will now process the volume label of CD-ROM's a
little more carefully. If the CD-ROM has a blank label,
or if the label is "NO NAME" (or "NONAME"), Telegard will
get the volume serial number and covert it into hexadecimal
for use as the volume id label.
TG/2 + Protocols now have a native OS/2 flag. If your protocol is
a native OS/2 application, toggle this item on. The
protocols now work as follows:
If the protocol is native OS/2:
- Output environment & command to .CMD file, load
.CMD file in native OS/2 window
If the protocol is native DOS:
- Output environment & command to .BAT file, load
.BAT file in native DOS window
This flag will ensure that the protocol environment is setup
properly for when the protocol is run. The environment is
used to set the logfile path; thus, the logfile path will be
correctly passed off to the protocol, and Telegard will now
be able to process uploads and downlaods made from DOS
protocols under Telegard/2.
* Daily download ignore restrictions flag (option 5) doesn't
work properly for downloads. Fixed.
* Changing *.FA* file area db storage path would not move the
files into the new path as it used too. Fixed.
SCRIPTS
+ Added MCI function to force processing on a string variable
which contains MCI codes. This will alleviate a few variable
processing order restrictions which limit how many levels of
dynamic processing can occur. Temporary fix until g3 script
language is released . . .
OTHER
+ User emulation detection during login (user set) will now
be logged to the system logs. In addition, the user editor
will now display "Detect :: (emulations)" in the user editor
for such users.
* RTE 200 still existed with the TELEGARD.EXE and UPDATE.EXE
executables, because the source tree was picking up an older
library file that I wasn't aware of; this source tree has
been updated to reflect the earlier patches, and all
utilities should now be PII 300+ friendly...
* Updated IEMSI polling to behave better under multitasking
environments (most noticable in Telegard/2). I had to make
some heavy modifications to make this work--it cut 1K of
code, but requires some good eyes and testing...
* Updated ANSI detection polling to behave better under
multitasking environments (again, most noticable in
Telegard/2).
* Time limit settings now have a maximum of 1439 minutes
instead of 32000 -- this prevents overflow, and means a user
can spend a maximum of one day online before their time runs
out (which I think is COMPLETELY reasonable... :p)
* Y/N prompts now send a `07 clearing code after the prompt
just in case you're using high-background colours, which
have a tendancy to bleed when you're at the last line of
the screen (not my fault... just patching).
* Caller-ID for out-of-town callers where the phone company
returned 0 as the phone number would cause duplicate phone
number checking to report many duplicate phone numbers when
it really should have just been ignoring these numbers. The
intelligent parsing will now ignore all numbers that are
either blank or filled with 0's, or that are filled with
other alpha characters (such as Unknown, Private, etc.)
* Some string conversion routines were patched; most noticable
in the Menu Editor command help section (but potentially
problematic in a few other areas too...).
3.09 Gamma 2 - 5 July 1998
INSTALLATION NOTES
Please completely read INSTALL.DOC. Follow the installation
instructions to the number, otherwise you will find that your
system has not been completely or correctly updated, and this
is likely to cause you many problems and frustrations.
RELEASE NOTES
This version of Telegard 3.09.g2 is complete, save the
scripting language. I decided that I didn't have the time to
dedicate to finishing the scripting language for g2 and keep
the release of g2 to a reasonable date. Subsequently, the new
compiled scripting language will make it's debut in g3.
In addition, Gamma 2 marks the release of Telegard/2, a native
OS/2 version of Telegard. There aren't many additional
features included in TG/2, but there are many planned for the
future. Please consider Telegard/2 a test version--it is a
direct drop-in replacement for Telegard/dos, so you can run
both from the same set of data files and test Telegard/2 while
still running your system critical BBS using Telegard/dos.
MAJOR CHANGES
* The installation procedure has changed considerably (to make
things easier...).
1) INSTALL.TG / INSTALL.TG2 replaced by INSTALL.TWS and
INSTALL2.TWS -- which are password protected .TWS files
instead of a password protected .ZIP file. This should
allow the Telegard distribution archive to be uploaded
without failure to THD ProScan and other protected
upload systems (no errors during unzipping).
2) All reference documentation and other non-install
documentation will be packed in DOCS.TWS (NOTES.TWS is
no longer being used), and will be unpacked in a DOCS
subdirectory.
* Telegard now locks (deny write) the config.tg file when
entering the system configuration. This means that other
nodes/instances of Telegard will be able to read but *not*
update the system configuration (the prompts change to
include -=> View Only Mode <=- in this case).
This was done to protect data integrity across nodes &
networks, but still to allow other nodes to view the system
configuration (as I often do by shelling from Node 1 into
Node 2, when I can't load the configuration directly in Node
1 (ala message posting)).
If an external program attempts to open the file in Write or
ReadWrite mode, the external program will fail. If the
external program does not write to the data file, then the
file mode should be changed to Read only to allow it to open
the system configuration in this instance.
* I changed all of the internal routines relating to the message
buffer / buffer length to use a standard textbuffer library
that I built (to handle messages, file descriptions, etc.).
While the changes were fairly straight forward and just
involved modifying the current routines, I *may* have made a
typo here or there resulting in code being broken.
* I changed the way sets are handled in Telegard (internally
for now; developers will get these changes in the next
development kit, since the methods are computationally
compatible).
At any rate, this was done to facilitate compilation on other
platforms with other compilers; TP/BP can store sets in byte
values, but other compilers often use word or longint values
which are incompatible in size.
This change took about 7 hours to complete, and while I
*attempted* to verify everything I did, I may not have.
Therefore, please keep an eye out for things like:
* Flags which are not correctly used (or are inverse)
* Flags which can not be toggled
* I started changing how Telegard stores file names and paths
internally so that we can eventually (hopefully) move to long
filenames, and case sensitive names as the platforms permit.
This was again a fairly lengthy change (and is still ongoing)
so please let me know if anything is broken.
* I started optimizing the common routines; this resulted in a
1K decrease in core memory--nothing significant yet, but I'll
continue working on it to see what else can be trimmed.
Please let me know if any standard functions begin failing...
* Patched up the Squish code to conform to standards which
aren't documented...
It appears that SQPACK sets .sqi index entries for delete
messages (from date packing, and potentially from a base
which has it's maximum_msgs reset) to the filesize() of the
.sqd file. The Squish documentation says extra entries are
marked with a msgptr == 0. Telegard was checking the msgptr
when posting, and trying to avoid overwriting a valid
message; Telegard would write to the end of the file with the
last entry 0... after a message is posted, two scenarios
emerge:
1) The message posted is long enough so the next deleted
message offset is valid, but incorrect; Telegard
ignores the message (invisible message syndrome...)
2) The message posted is not long enough so the next
deleted message offset is invalid; RTE 100.
Telegard now ignores the msgptr value in the .sqi index file;
it just writes the index entry overtop--it is now assuming
that the message number fields are properly maintained so it
can do this, and that the msgptr that it is overwriting is
indeed to be overwritten (otherwise the message number field
would be more up-to-date).
LANGUAGES
* Review LANGUAGE.G2 for updates to your language file, and
instructions on how to merge the language files to speed up
the update of your languages.
UTILITIES
* INDEX, FB2FA and FA2FB utilities were patched up to fix the
ghost upload bugs that were encountered in Gamma-1.
* CMPRLANG has added functionality to compare without colour
codes (i.e. strip colour, then compare). This effectively
scans for text changes only.
AREAS
+ MA and FA area change commands now accept [ and ] as options,
for previous scanned and next scanned areas respectively
(similar to - and +, but working only on scanned areas).
+ Message/file area editors now have a 'J'ump to entry command.
* MY and FY commands should now screen pause appropriately.
* When Telegard releases the area lock, it will return to the
menu instead of continuing with the requested operation--this
is done so the screen is fresh again (so you can see area
numbers, etc.). The next subsequent request will work as
usual (with no message until the editor is exited).
* Menu commands FY (new file areas) and MY (new message areas)
will now check the ACS of referenced conferences; i.e. if you
just use S25CA and expect the conference "A" access to do the
weeding; it will now properly be checked and adhered to.
MESSAGES
+ Added long internet address support for those running their
own gateway software, togglable for each area instead of as a
global toggle (just in case you have different feeds).
IMPORTANT NOTES:
1) Only available for JAM format (Squish does not have
long enough field names)
2) Only available for internet areas
3) Your gateway software MUST support > 36 character
addresses directly in JAM format. If you export to
another source (i.e. your Fidonet hub), then you must
use Antiquated UUCP support to have > 36 character
addresses, as this is the limitation of the *.MSG
format which is used by FTN's.
+ Added mail account option for downloading from the command
line in Telegard; using -M=First_Last will create a qwk mail
packet from (or upload a packet for) the user account listed
instead of the standard SysOp account.
+ Added message start number prompt to the MC (mail check)
command (users with ForcedEmailDelete flag are not prompted).
The default input is the first UNREAD message. In addition,
the mail check command now counts total and unread messages,
and displays this information in the title listing as well.
+ Added feature to toggle skipped messages (from title
scanning) as read (i.e. make highread message # = last
message #). This option is only available for new message
scanning.
+ Added feature to skip read messages during a waiting message
scan. Also added feature to scan for messages To: 'All' when
doing a personal scan (so the user can read personal and
general messages).
+ Telegard can support long email addresses (>35 characters) if
Antiquated UUCP is toggled ON. Telegard will then put the
long TO: name in the first line of text, and address the
message to UUCP. NOTE: THIS IS JUST AN ADDED EXTENSION OF
THE OLD ANTIQUATED UUCP SUPPORT.
+ Added ability to do a keyword search across all message areas
instead of just one. Note, this search is intensive as every
message in every (available) area is loaded and scanned. The
menu command is MK.
+ Added grey twirly bar to waiting message scan, although it
should be fast enough that activity characters really aren't
necessary, it was added anyway...
+ Added separate NEWSGROUP and INTERNET EMAIL semaphore files.
Previously these areas created/touched ECHOMAIL.* and
NETMAIL.* files, but now create/touch IGROUP.* and IEMAIL.*.
If you use your mail tosser to toss ALL of these types, you
should check for IGROUP.* and IEMAIL.* in addition to
ECHOMAIL.* and NETMAIL.* (where * is .TGS for Squish, or .TGJ
for JAM).
+ Added ability to do a reverse title scan for menu command MS,
which now prompts to do a forward or reverse listing.
* QuoteHeader is output to MSGTMP as part of the message text
if using an external editor, for FSE which don't have the
option of a quote header (i.e. Telegards internal quote
header will be output as text for usage...).
* QWK pointers can now be updated for areas that users don't
have posting privileges too--this was the result of a fair
number of errant pointer update reports.
* QWK areas that a user can't post to are no longer listed as
'unknown', but rather 'denied'.
* Newsgroups will not be scanned for personal mail (no such
thing--newsgroups are inherently to 'all').
* QWK network support/anonymous/anyname support has been fixed.
* Squish lastread updates for deleted users are now done during
a new user logon instead of when the user is deleted.
* If an area was previously cached, Telegard will recount the
available messages instead of just ignoring the open call
entirely (Telegard was previously ignoring the call since it
could get all the information from the area cache...).
* QWK uploads should now dynamically pack Squish areas properly
after a message is posted.
* Quoting now has a C:ycle command which will reset the pointer
of the quote lines to the first line in the file. I don't
particularly like C:ycle as the name, so if you have a
better one which works with available letters (not AFTRSOQ)
then please let me know . . .
* R& will now properly toggle the message sent/unsent.
* Deleting/editing/etc. a message will only append a new line
to the ECHOMAIL/NETMAIL.JAM files if the message sent status
is toggled [except in circumstances when it doesn't know, in
which case it always adds it].
* Uploading prepared text with ~PF on the upload command line
with an unregistered DSZ/GSZ would result in an upload error;
Telegard now does not pass ~PF for batch protocols in message
uploads.
* Importing text with line length > 255 will no longer cause
Telegard to hang when listing the message; Telegard will now
appropriately chop the lines at 250 characters. NOTE: If you
are trying to import ANSI files, then you should save your
ANSI files with a line length <= 250 characters, NOT 255 and
certainly not without ANY line length restrictions. If you do
not, your imported ANSI will likely be grunged when it is
viewed--YOU HAVE BEEN WARNED!
ALSO, remember that echomail networks typically recommend
line lengths <= 75 characters for ANSI transmission. If you
wish to import your files for export via a network, best save
them with the recommended line length...
* Fixed a number of pesky Squish bugs--
1) The lost-first-line of a message after a title scan or
msg number reload
2) The ">> Message exceeds 64K" problems should now be
fixed (except for legitimate messages over 64K)
3) 'Posted' but 'Invisible' (SQREIDX fixes): If the .SQI
file is not properly updated with 0 entries for deleted
messages at the end, Telegard will now ignore this and
save the message in the proper index spot instead of
trying to magically protect an invalid entry. Telegard
will put a DEBUG: note into the logs when it does this.
4) RTE #100 after SQPACK'ing an error with date packing
ENABLED, or a changed MAX_MSGS limit causing SQPACK to
pack the areas before a dynamic pack can do it...
* Inserting new message areas, when the area default (setup in
your system configuration) is for areas to be DEFAULT OFF in
the user scan is now correct; before Telegard would always
set the areas in the scan, not it'll obey the default
setting.
* MW command now has an option to default the options instead
of asking, so that MW*1 will default to 'Unread Only' and not
'Read to 'All''. MW1 will ask the questions as designed.
* JAM indexes now contain appropriate userCRC values for local
message areas (i.e. message entered online, in email or
otherwise now have the proper CRC values, and thus can be
found by the Waiting Messages scan...). Previously posted
messages have and will not be corrected.
* *.JAM (ECHOMAIL/NETMAIL) files will be updated when the
message is edited (i.e. if sent/unsent, to, from, etc. is
toggled....). It might cause the scanner to inadvertently
check a message which has already been sent, but this way
nothing is explicitly missed...
* Replies to messages from "SysOp" will automatically be sent
to the SysOp name configured in the BBS configuration. This
is identical to new messages entered locally, except that it
now handles replies to automated messages from "SysOp" (such
as hack warnings, other offline posting utilities, etc...).
* Changed PAUSE prompt to MORE(y/n/c) prompt when listing
messages, allowing for easy aborting, and also allowing for a
continuous listing mode.
* MC command has optional parameter (C) which returns only the
counts instead of listing the messages and prompting to read.
The default (no parameters) is to count, display titles and
prompt to read. With parameter C, only the count is done.
[NOTE: I still suggest using MC with no parameters in your
login sequence...].
* 64K limit should be properly adjusted when saving messages.
* Changed file attach method so that the message has a notice
of the attached files, and the download of those files is now
controlled via a menu option (RF) which should be added to
your MSGREAD menu.
* Changed message statistics feature to output to a .TXT file
so that statistics can be saved/referenced at a later date.
Viewing the statistics will view the last created set, unless
the SysOp/User chooses to update the statistics. Output file
is in your data directory as MSTATS.TXT.
* Trailing blank lines will be stripped before the signatures
are added, and stripped after the signature is added (to get
any from the signature).
FILES
+ File tagging prompt now accepts range operator '..' (I chose
'..' since it can't be in a valid filename, thus making the
parsing considerably easier.
+ Added menu command S=, which will toggle continuous listing
of the remainder of the files (i.e. no page pausing, no file
tagging prompts...).
+ Added (finished) the upload processing during a SysOp /U
upload. Upload processing includes testing, conversion, gif
specs. and archive commenting.
+ Added "tag file" command to EditFiles menu.
* FILE_ID.DIZ importation is now a little smarter; if the file
has a non-standard archive extension (i.e. one which is not
defined in the system archive configuration), then Telegard
will run the archive type detection code to determine if it
matches another archive type. If the file has a valid
archive extension that is WRONG, this will not be detected.
* File type conversion should now properly update the index
files when the files change format.
* Moving files will now check for duplicate names in the
destination area; if the file record exists, or the physical
file exists without a record, the move will not be completed.
* Duplicate file handling has been re-enabled; check your
options in the file system; you have None (will only nuke the
file if exists in destination area), KillDupes (will nuke if
file record exists in any area), and MoveDupes (will move the
file to a holding directory; if the file area exists in the
holding directory, the file will be incrementally renamed).
If the MoveDupes feature is used, the file description will
be augmented with ** Duplicate File **, and if the file is
renamed, ** Duplicate File / Original FFFFFFFF.EEE ** will be
used instead to indicate the original upload filename.
THIS FEATURE COULD USE SOME HEAVY TESTING, COMMENTS AND
CRITICISM . . . (just so you know...). <g>
* Changed how file descriptions are edited based on some
suggestions; let me know what you think of the new system (I
personally think it is quite a bit better . . . ).
* Changed the way file transfer statistics are reported; all
the various upload/download routines should now use the
standard statistics reporting template (MCI codes are now
available for lines 711 through 720). Please let me know if
you encounter any strange transfer statistics...
* Last file scan date is now stored (last time FN is run for a
user) instead of using the laston date; this will allow users
to logon many times between new file scans, and still see new
files since the last time they scanned. This logic is
slightly different than we're used to, please let me know if
it doesn't work in some way . . .
* Validating files in No Prompt mode now has a receipt mode too
-- ask for each file (jic), yes receipts and no to receipts.
* Fixed up maintenance options; saying NO to all areas with the
current area a CD-ROM area would result in no action... which
is obviously not correct, since you want to scan the current
area only (regardless of it's CD-ROM-edness).
* Commandline -FC will process all areas (including CD-ROM) for
file updates, while -F will continue to ignore CD-ROM areas.
* CD-ROM labels stored in the file areas will accept mixed case
now; the matching is case sensitive (although I can't imagine
why case would matter). Ensure that you have the correct
case for your CD's...
* Saying NO to 'upload all' will deny processing of any CD-ROM
areas, when it should just blindly accept the current area as
the scan area, regardless of what it is. Fixed!
* Using SE (edit files) command from the file tagging menu
should now properly handle moving/deleting files instead of
returning a RTE.
* Updated "test" command from EditFiles menu selections so that
if the testing method has been set to Integrity, Telegard
will now actually just do the integrity check.
* Corrupt archives should now be noted as corrupt archives
instead of giving a RTE (this is how things were designed to
work like all along...).
* FILE_ID.DIZ importation during uploads will now use the
correct TEMP\FILE\ path instead of the path the file is GOING
to be moved to...
* Telegard will now properly search for files during the /U
upload command--it was incorrectly checking the search
indices previously, which caused many upload/duplicate
problems.
OTHER
+ Telegard TEMP directory can now be relocated with the
environment variable TGTEMP=[path]. NOTE: The TEMP\TEMPn
extension will be automatically added to the base path that
you provide. For example:
SET TGTEMP=D:\BBS
will use D:\BBS\TEMP for single nodes, and D:\BBS\TEMP1 for
Node 1, etc... You can setup different drives for different
nodes by setting different environments:
SET TGTEMP=I:\ (Node 1 environment)
SET TGTEMP=J:\ (Node 2 environment)
will use I:\TEMP1 for Node 1, and J:\TEMP2 for Node 2.
WARNING: Telegard will clean out the TEMP directories as it
sees fit. DO NOT OVERLAY THE TELEGARD TEMP DIRECTORY ONTO A
TEMP DIRECTORY FOR ANOTHER APPLICATION.
+ Added preliminary caller-ID support. Telegard will search
for the caller ID information, will store it to the logs, the
user record, and will use it when scanning for duplicate
numbers.
+ Added message post/time ratio--this ratio is a little fairer
than a post/call ratio, since it takes into account the time
spent online, rather than the number of calls. Someone who
calls twice a day to use the Offline Mail Door may only use 5
minutes, but make two calls (download & upload), and someone
with a poor connection may get dropped often, but not
actually use any more time than anyone else...
+ Added menu equalization command (short menu description will
be set to the (truncated) long menu description).
+ Added menu input length option. Menus should default to 60
as the maximum input length (field). If your menus don't
convert properly, input may not be properly checked; if
Telegard finds an invalid value it will default to 60, but
you should double check your menus anyway.
+ Added auto-detect emulation during logon option. If the user
selects this mode, Telegard will adjust their emulation to
the most compatible terminal emulation during logon
automatically (RIP, Avatar, ANSI, TTY, in that order...). If
the terminal mode is not correctly detected, or the detection
chooses a mode that the user does not wish to use, the user
should not use this feature.
+ Added option to delete BBS entries when editing them. Only
the user who added the entry, or a CoSysOp, can delete/edit
any given entry.
+ Added subscription update command, which will update the date
a given subscription is to expire. The menu command is OZ.
! Cancel (reset) expiry date
=[n] Set to n days from current date
+[n] Set to n days from current subscription expiry
+ Added ability to override the external chat. Pressing ESC
instead of ENTER will force an internal chat (ENTER will
continue to use external if available, and internal
otherwise). ALT-Y will force internal chat, while ALT-C will
use external if available, and internal otherwise.
+ Added ability to send internode messages from WFC menu --
command N.
+ Added MCI time conversion code to convert times to 12-hour
with am/pm indicators. The input is time in the form of
HH:MM:SS or HH:MM (or even HH, as it only checks the first
two characters). For instance:
~ET8~ST will produce:
~ST: 13:45:01 => 01:45:01p
~ST: 07:45:01 => 07:45:01a
~ET5~ST will produce:
~ST: 13:45:01 => 01:45p
~ST: 07:45:01 => 07:45a
(as you can see, you can stack MCI codes to get the desired
affect as you see fit...)
+ Added sysop key ALT-1 for transmit file; it assumes a raw
(unlisted) download, and uses the unlisted download engine
after the filename has been input.
+ Added ACS for subscription level Z<c> (see ACS.REF for notes).
+ Updated the crt unit to correctly calibrate on PII 200+
machines, so that the RTE #200 should *not* occur. If anyone
previously had to run tppatch.zip to get Telegard to run on
their machines, I would appreciate knowing if the problem has
been solved.
+ Added ALT-N function key to enable/disable chat paging audio
on a per-call basis (instead of having to wait for the user
to actually chat you).
+ Updated the SysOp log viewing code; in addition to the
Telegard sysop*.log files, any file in the /logs folder can
now be viewed by typing the filename.
TG/2 + Added option to control the operating priority of Telegard
sessions. When booting, Telegard will set the session to
NORMAL priority and then adjust the potency of that setting
based on the system configuration (-31 to +31). I don't
honestly know much about this, Telegard will start at 0 for
now, until someone can let me in on an 'ideal' setting...
+ Door commands can now accept M<time> as a door command which
is the maximum amount of time the user can spend in the door
(the minimum of <time> or OnlineTimeLeft is passed in the
door drop file...).
+ Added Lower, Mixed, Upper and Strip Colour commands to the
menu editor for descriptions. NOTE: These routines were not
tweaked for menu display; so changing to lower case will
change colour codes just as it would mci codes, etc. They
are meant to be helpful rather than powerful; they will not
be changed from their current processing format.
+ Added "message to user" (email) option to user editor; note
that you can't send email if using the user editor from the
message prompt, only from the WFC or *U menu commands...
+ Added menu input option; display in lower case. The input
will still be parsed as usual (uppercase), but when echoing
back to the screen, the echo'd characters will be in lower
case.
* Installation procedure now attempts to run 'index build all'
and 'makelang language\english' automatically during a new
installation. This simplifies a new installation ever so
slightly.
* Voting system under certain conditions would get itself into
an infinite loop--fixed.
* Duplicate phone number searching (during newuser logon) will
now match the last recorded CID for users, and will also
check the current users CID in addition to data/voice
numbers.
* Telegard command line options are now logged for reference.
* Log files are now opened in fmWrite+fmDenyWrite mode when
saving the temporary logs from /temp/ back to the /logs/
directory. This will hopefully now avoid runtime errors when
viewing the main sysop logs and another node attempts to save
its log file contents back to the main sysop logs.
* Updated the modem configuration section; option A now allows
you to modify any of your nodes profiles as well as the
default profile (for single node systems, it always uses your
only modem profile). In addition, for multinode systems,
there is now an option to update a node profile to the
default modem profile settings.
* I patched the video routines again, based on some advice and
code from Tom Fotherby (enigma). There shouldn't be TOO much
of a noticeable difference under DOS, but under OS/2 and other
operating systems video display should be much improved. My
thanks for the advice and sample code . . .
* External archive viewing should once again work (was
displaying the wrong capture . . . ).
* Added gender ~&8 MCI code for user browsing (1614/1615).
* Errorlevels are now handled slightly differently:
PRESENTLY FORMERLY
0 Regular exit (from -Q option) 0
1 WFC quit (Q from WFC menu) N/A
2 Error exit 1
(these values can be overridden with -EN, -EQ and -EE command
line options respectively). ALso, note that events should
now exit with the proper level, and that the exit level is
now noted in the logs.
* User editor now allows the changing of the SL level to
something higher than the online user, IF, the editor is
evoked from the WFC (Online user is SysOp), or from
ALT-E/ALT-U. Otherwise, a user can only promote another user
up to their security level if they are in the interactive
user editor (*U).
* Caller-ID numbers will now be reformatted as follows: all
spaces and dashes will be removed. If the remaining
characters are all digits, Telegard will then determine if
the number is longdistance (leading 1), and then check to see
if the number has 7 or 10 digits--and format as ###-#### or
###-###-#### respectively. If number does not meet the
criteria, no further reformatting is completed.
* When entering user names (real name or alias/handle),
Telegard will now strip the colour codes and check to see if
a name matches; i.e. coloured names will no longer be
considered differently than uncoloured names.
* I've patched the code for large drives (partitions > 2.1GB).
This means that the fcopy() routine should check for
available drive space before copying, as should the upload
routines, and message posting. The drive space MCI code
should return >1024 MB, and the wfc should report >1 GB. If
someone with a large drive could possibly check this and get
back to me, it would be greatly appreciated!
* Input routines now accept CTRL-Y again for deleting words.
Telegard input routines use CTRL-X to delete from the cursor
back the beginning of the line, and CTRl-Y to delete from the
cursor back to the next word (it consumes backwards; all
non-space characters of the current word, and all spaces
between that word and the previous word). Both CTRl-Y and
CTRl-X work with the cursor keys too . . .
* -X with a parameter > 1440 will now properly set the event to
24 hours+ from the current time. Thus, passing -X1440 will
no longer assume an IMMEDIATE event, but one for 24 hours (it
was previously parsing 1440 as the proper event time, but
since there is no stored last execution time, starting the
event immediately...)
* If line 103 in the language file is blank (i.e. excluded)
then Telegard will not process the "Press ENTER to continue"
when answering from the WFC. NOTE: THIS FEATURE IS THERE FOR
A REASON, IF IT MESSES UP YOUR ANSI DETECT, USER LOGONS, ETC.
THEN DON'T COMPLAIN IF YOU REMOVE THE FEATURE!
* I reworked the buffer() routines used in the script language
(our current one at least), and the file display routines.
The buffers were incorrectly handling the last character of
the file under a variety of conditions (most especially when
there was no CR/LF or EOF markers) . . . this was responsible
for missing characters, possibly MCI or ANSI codes.
* * * IMPORTANT * * *
The script language as we know it relied heavily on these
buffer routines for jumping in, around, back, etc. in the
file. While it is not imperative to retest these features
thoroughly since I'll change the whole thing around with the
compiled scripting language, IF you run into problems you can
go back to B15 and let me know . . .
* Fixed up -X[n] parameter; it should now accept legal values,
and only process them for the NEXT event, not the FIRST
possible event _ever_.
* Changed the default path resolution option--since Telegard
now has advanced checking, it is not necessary to scan each
file & message path during startup. Thus, Telegard now
defaults to NOT checking file paths during startup. You can
force a path check by passing -PATH on the command line;
doing this once a day during maintenance (such as telegard
-path -s or some such) isn't harmful. Subsequently, command
line option -P is now obsolete.
* External events now respond to 0 minutes, and now also have
the FORCED flag (to deal with events that start in a couple
of minutes, but are exceeded by the time the user actually
logs in (load, name, password...).
* Menu renaming now deletes the original file; and no longer
allows for empty input. Menu copying now works again (patch
to disable empty input also disabled copying of menus!).
* MCI code ~&9 for last (few) callers is now in minutes.
* WFC screen colours don't bleed when answering from the WFC
screen. Simple fix, never noticed (silly frontends...)
* -O command parameter works properly now (.b13 fix).
* Passwords will not be displayed if local security is on;
previously only display security turned off that feature, but
I decided that local security overrided it in that particular
case . . . Also, toggling local security on will also toggle
display security on (it can be toggled off separately...)
* Added ~&9 mci paramater to last callers and last few callers
lines (1602/1603 and 1722/1723 respectively).
* Stacked menu commands (from menu loads), such as -^
MESSAGE;;O should now properly work again.
* Menu command OK should now work properly.
* Events should now properly redraw WFC screen as necessary.
* SysOp windows were cleaned up and extended slightly. I will
be adding a two-line compact mode shortly.
* Language selection prompts now have a default; to the new
user default language (if any), or to the first language in
the list.
* Daily timegraph, etc. colours and characters were added to
the language.
* Fixed menu looping caused by the FILETAG/MSGREAD menus being
called from a menu with a FIRSTCMD which calls a menu
function which loads FILETAG/MSGREAD menus.
* Added paging capabilities to the range input screens.
* Who's Online options now correctly use the hiddenlog features
to hide a user who is not supposed to be seen online.
* Menu command copying has been repaired for certain
combinations which Telegard thought were invalid, but were
not.
* IEMSI sequence should now be abortable with the ESC key.
Also, IEMSI software (client) is now logged to the SysOp log
to aid in debugging IEMSI problems (if reporting any IEMSI
related problems, I need that field...).
* Changed -C command line parameter so that it accepts an equal
sign (-C=[s]) like other string parameters. Telegard
presently parses both methods--this isn't likely to be around
for the final 3.10 release.