Subj : Baja argument help
To   : DesotoFireflite
From : Digital Man
Date : Sun Feb 13 2022 02:26 pm

 Re: Baja argument help
 By: DesotoFireflite to Digital Man on Sun Feb 13 2022 04:43 pm

>   Re: Baja argument help
>   By: Digital Man to DesotoFireflite on Sun Feb 13 2022 12:11 pm
>
>  DM> Re: Baja argument help
>  DM> By: DesotoFireflite to All on Sun Feb 13 2022 01:47 pm
>
>  >> But the way I have it, it also takes the other users to the news
>  >> message base even if there are no new messages, so I'm sure I have my
>  >> logic screwed up. It's acting like it's not getting to the secont
>  >> part. Below is the new file, can someone let me know where I went
>  >> wrong. Thanks in advance.
>
>  >> !include sbbsdefs.inc
>  >> !include file_io.inc
>  >> !include dir_attr.inc
>
>  >> compare_ars LASTON EQUALS 0 OR REST G
>  >> if_true
>  >> # If New User or Guest, go to Local News Message Base and Read News...
>  >> SETSTR "LOCAL"
>  >> MSG_SET_GROUP
>  >> SETSTR "NEWS"
>  >> MSG_SET_AREA
>  >> MSG_READ
>  >> if_false
>  >> # All other users, go to Local message Base, check for new messages In
>  >> News, # and show New Messages and if no New Messages exist, do
>  >> nothing, and exit. SETSTR "LOCAL"
>  >> MSG_SET_GROUP
>  >> SETSTR "NEWS"
>  >> MSG_SET_AREA
>  >> MSG_NEW_SCAN_SUB
>  >> end_if
>
>  DM> Replace that "if_false" with "else".
>
> Still not working for the regular users, takes them right to the message
> base. It's like it's not seeing the second part, and giving everyone the
> first part. see below, I changed it as you suggested.
>
> !include sbbsdefs.inc
> !include file_io.inc
> !include dir_attr.inc
>
> compare_ars LASTON EQUALS 0 OR REST G
> if_true
> # If New User or Guest, go to Local Message Base and Read News...
>     SETSTR "LOCAL"
>     MSG_SET_GROUP
>     SETSTR "NEWS"
>     MSG_SET_AREA
>     MSG_READ
> else
> # All other users, go to Local message Base, check for new messages In News,
> # and show New Messages and if no New Messages exist, do nothing, and exit.
>     SETSTR "LOCAL"
>     MSG_SET_GROUP
>     SETSTR "NEWS"
>     MSG_SET_AREA
>     MSG_NEW_SCAN_SUB
> end_if
>
> I can't understand it, I've worked with Baja before, and I thought I
> undersood it. I'm figuring with a new user, the last on would be 0(zero),
> and the Guest would be a restriction of "G", hence "compare_ars LASTON
> EQUALS 0 OR REST G", so as a regular user with no restrictions, and laston
> field populated with a date, it should be false, and go to else, the second
> half, but it's acting like it never sees the second half with regular users,
> but treats them like a new user or guest. I also tried "compare_ars LASTON=0
> OR REST G" and got the same results. My logic must be flawed. It may be the
> LASTON causing the issue, but I don't know another way of determining a new
> user with ars or any other method.

LASTON is initialized to the current date/time when a new user account is created. "LOGONS" is probably the value you want to be checking. It should be equal to 1 for a user's first logon.

By what you're describing, the second "else" section should *always* be executing and it's the first ("if_true") section that isn't being executed. In that case, fixing the ARS should solve that.
--
                                           digital man (rob)

Synchronet "Real Fact" #30:
The COM I/O routines for Synchronet for DOS were written in ASM by Steve Deppe
Norco, CA WX: 86.6�F, 9.0% humidity, 1 mph SW wind, 0.00 inches rain/24hrs

---
� Synchronet � Vertrauen � Home of Synchronet � [vert/cvs/bbs].synchro.net