This is what I get for not actually learning to script while I was creating one.
My Tiger upgrade appears to have broken a script that was working well. A Mail rule invoked the script which then harvested data from a structured email sent by a web form (something called FORMMAIL, a tool provided by my website host). It then transferred the data to a FileMaker database. It looks like the script is just ignoring everything in the message.
I harvested the data by changing the text delimiters to bracket the data with the structured text from the web form. First, I set the delimiters to be the flag text preceding the target text, harvested the second text item, then used the extra returns as a delimiters and harvested the first text item. This worked great under 10.3.x, but broke under Tiger. Does anybody have an idea what changed and how I can fix it?
A sample of the first part of the script follows. Thanks!
John
(*
NewShowRule
Invoked when Mail receives a message from a web form
*)
(*
This script creates a new record in the FileMaker Show Database.
*)
using terms from application "Mail"
on perform mail action with messages theMessages
tell application "Mail"
repeat with eachMessage in theMessages
set myString to content of eachMessage
set oldDelimiters to AppleScript's text item delimiters
-- Get Event Name
try
set AppleScript's text item delimiters to "Event Name: "
set eventName to text item 2 of myString
set AppleScript's text item delimiters to "
" -- delimiters are now a double return as copied from the web form
set eventName to text item 1 of eventName
on error
set eventName to ""
end try
-- Get Event Address
try
set AppleScript's text item delimiters to "Location: "
set showLocation to text item 2 of myString
set AppleScript's text item delimiters to "
"
set showLocation to text item 1 of showLocation
set AppleScript's text item delimiters to "
" -- now a single return to break down free form text to individual lines
set showAddress to ""
repeat with lineCount from 1 to number of text items in showLocation
set showAddress to showAddress & text item lineCount in showLocation & return
end repeat
set showLocation to showAddress
on error
set showLocation to "Call for Location"
end try
-- and so on...
eventually, this opens a FileMaker DB and puts the data into the appropriate cells. Or at least, it should. It opens FM but does not seem to have anything to put into the cells. In this case, the email has "Event Name: " and "Location: " put in place by FORMMAIL as headers for the data input on the web form and worked well as delimiters before Tiger.