[comp.sys.mac.hypercard] Hypercard DateBook fix

roger@caldwr.UUCP (Roger Linder) (01/05/90)

In the Hypercard "Date Book" stack the GoSixMonthly and GoWeekly scripts fail
for the first week of a six month period beginning on a Monday.  January 1990
and July 1991 both meet this criteria.  The following modifications for these
two scripts are offered:

In the stack script "GoWeekly" for stack "DateBook", the code should read:

  set lockScreen to true
  GO FIRST CARD OF BACKGROUND "WEEKLY"
  find startOfWeek(myDate) in bkgnd field "WeekSecs"

In the stack script "GoSixMonthly" for stack "DateBook", the code should read:

  visual effect zoom open
  GO FIRST CARD OF BACKGROUND "SIX MONTHLY"
  find thisHalfYear(myDate) in bkgnd field "MySecs"

The added "GO" command is in UPPER CASE for emphasis.

The reason that the scripts fail is that the hidden field "MySecs" in background
"Six Monthly" and the hidden field "WeekSecs" in background "Weekly" share the
same value, which is inadvertently "found" by the find command.  This prevents
the normal transfer of control to the proper card.  By locating to the proper
background first, the find command does the job it's supposed to do.
-- 
+--Roger D. Linder-(Yes, the famous one)-----v Department of Water Resources  |
|                                            | ...!ucbvax!ucdavis!caldwr!roger|
|  Only Golden Fingers Could Play So Heavy   | Sacratomato, CA                |
+--------------------------------------------^--------------------------------+