Here's a more recent version with corrected inspiration. :-)
[
REBOL [
Title: "Reminder"
Date: 1/December/1999
Name: 'Reminder
Version: 0.0.2
File: %"Reminder.r"
Home: http://members.xoom.com/AndrewMartin/
Author: "Andrew Martin"
Owner: "Andrew Martin"
Rights: "Copyright © 1999, Andrew Martin."
Needs: 2.2.0
Tabs: 4
Usage: {
Reminder? 5/Dec/1999/19:00:34
Reminder? now
}
Purpose: {
To issue reminders for the current time
for a daily and weekly schedule.
}
Comment: {
Inspiration gratefully received from Graham Chiu! :-)
}
Inspiration: {
Graham Chiu
gchiu<at>compkarori.co.nz
http://www.compkarori.com/dynamo - The Homebuilt Dynamo
http://www.compkarori.com/dbase - The dBase bulletin
}
History: [
0.0.1 [1/December/1999 {Created this.} {Andrew}]
0.0.2 [1/December/1999 {Updated this header.} {Andrew}]
]
Language: 'English
Email: [EMAIL PROTECTED]
Site: http://members.xoom.com/AndrewMartin/
Category: 'general
Charset: 'ANSI
Example: {}
]
Daily_Schedule: [
22:00 "Ten O'Clock News - TV1"
]
Weekly_Schedule: [
Tuesday [
18:00 "Six O'Clock News - TV1"
20:30 "StarTrek Voyager - TV4"
]
Thursday [
20:30 "Star Gate - TV3"
]
Friday [
19:30 "Farscape - TV3"
]
Sunday [
19:00 "Futurama - TV2"
]
]
Weekday: function [
{Translates Weekday number to weekday name word.}
Date [date!]] [Weekdays]
[
Weekdays: [
Monday
Tuesday
Wednesday
Thursday
Friday
Saturday
Sunday
]
pick Weekdays Date/Weekday
]
Month: function [
{Translates Month number to month name word.}
Date [date!]] [Months]
[
Months: [
January
February
March
April
May
June
July
August
September
October
November
December
]
pick Months Date/Month
]
Daily?: func [Schedule [block!] Time [time!]] [
Time: Time - (Time // 00:01:00)
select Schedule Time
]
Weekly?: function [Weekly_Schedule [block!] Date [date!]] [Schedule] [
Schedule: select Weekly_Schedule Weekday Date
if block? Schedule [
Daily? Schedule Date/Time
]
]
Reminder?: function [Date [date!]] [Reminder] [
Reminder: Daily? Daily_Schedule Date/Time
if none? Reminder [
Reminder: Weekly? Weekly_Schedule Date
]
Reminder
]
Remind: function [] [Reminder] [
forever [
Reminder: Reminder? now
if string? Reminder [
print rejoin [{Reminder: "} Reminder {"}]
; Call Cellular Telephone Message script here!
; My_Cellular_Telephone_Message Reminder
]
wait 00:01:00
]
]
print Reminder? 5/Dec/1999/19:00:34
]
Andrew Martin
Perspiring over a hot REBOL stove... ;-)
[EMAIL PROTECTED]
http://members.xoom.com/AndrewMartin/
Online @ 33,600 Baud!
-><-