go to url
Ken Ray
kray at sonsothunder.com
Tue Dec 6 11:36:01 CST 2005
On 12/1/05 1:01 PM, "Rick Rice" <rrice at tru.ca> wrote:
> All I want to do is have a link in a field that when clicked will
> launch a browser and go to the url.
> I have spent the last evening and most of this morning searching and
> trying things like:
>
> start using "liburl"
> go url "http://www.google.ca"
>
> No luck
> Can anyone provide the correct script?
> script needs to be cross platform.
> I'm using MC2.5 Mac OS X 3.9
Sure, Rick, I have one that supports going to a url in a browser, launching
your mail client and addressing an email to someone, and opening AOL Instant
Messenger (or iChat) and starting an IM session (along with doing 'gopher',
but hardly anyone uses that anymore). It's more than you asked for, so cut
out whatever you don't need (watch for line wraps):
on stsGoURL pURL
put char 1 to offset(":",pURL) of pURL into tProtocol
if (char 1 to 6 of pURL = "file:/") and (char 7 of pURL <> "/") then
-- convert to local path with three ///
replace "file:/" with "file:///" in pURL
else
put "file:,http:,mailto:,gopher:,aim:" into tProtocols
if tProtocol is not among the items of tProtocols then
-- assume web
put "http://" & pURL into pURL
put false into tIsIM
end if
end if
switch (the platform)
case "MacOS"
if isOSX() then
get shell("open" && q(pURL))
else
do ("open location" && q(pURL)) as AppleScript
end if
break
case "Win32"
put (word 1 of the systemVersion is "NT") into tIsNT
if $COMSPEC <> "" then
set the shellCommand to $COMSPEC
else
if tIsNT then
set the shellCommand to "cmd.exe"
else
set the shellCommand to "command.com"
end if
end if
switch tProtocol
case "mailto:"
put queryRegistry("HKEY_CLASSES_ROOT\mailto\shell\open\command\") into
tMailApp
-- replace placeholders for all Win versions (%1 for non-XP modern, %l
for old, %ProgramFiles% for XP)
replace q("%1") with pURL in tMailApp
replace "%1" with pURL in tMailApp
replace q("%l") with pURL in tMailApp
replace "%l" with pURL in tMailApp
replace "%ProgramFiles%" with $PROGRAMFILES in tMailApp
open process tMailApp for neither
break
case "aim:"
-- Example:
-- aim:goim?screenname=binentertainment&message=This+is+a+test
put
queryRegistry("HKEY_LOCAL_MACHINE\Software\classes\aim\shell\open\command\")
into tAIMApp
replace q("%1") with pURL in tAIMApp
replace "%1" with pURL in tAIMApp
open process tAIMApp for neither
break
default
put word 1 of
queryRegistry("HKEY_LOCAL_MACHINE\Software\classes\http\shell\open\command\"
) into tBrowserPath
if tIsNT then
set the hideconsolewindows to false
open process (tBrowserPath && q(pURL)) for neither
else
get shell(tBrowserPath && q(pURL))
end if
break
end switch
end switch
end stsGoURL
Use it like:
stsGoURL "http://www.sonsothunder.com/"
stsGoURL "mailto:kray at sonsothunder.com"
stsGoURL "aim:goim?screenname=SonsOThndr&message=This+is+a+test"
Have fun!
Ken Ray
Sons of Thunder Software
Web site: http://www.sonsothunder.com/
Email: kray at sonsothunder.com
More information about the metacard
mailing list