Monday, November 08, 2010 at 12:01 AM.
system.verbs.apps.Eudora.toys.backup
local (releasefolder = "UserLand:New Releases:Eudora:");
local (backuppointer = releasefolder + "Backup Folder", destfolder);
bundle { <<error checking on the backup folder, set destfolder
on error () {
scriptError ("You must have an alias named “Backup Folder”Êin the same folder as this script.")};
if not file.exists (backuppointer) {
error ()};
if not file.isAlias (backuppointer) {
error ()};
destfolder = file.followAlias (backuppointer);
if not file.isFolder (destfolder) {
error ()}};
file.setmodified (backuppointer, clock.now ()); <<in case we're viewing by date
local (keystring = "Install Files.");
local (maxnum = 0);
local (f);
fileloop (f in destfolder) {
if f contains keystring {
try {
local (num = number (file.filefrompath (f) - keystring - ":"));
if num > maxnum {
maxnum = num}}}};
destfolder = destfolder + keystring + (maxnum + 1) + ":";
file.sureFolder (destfolder);
commercial.createinstallfile ("Eudora", Eudora.id, destfolder + "Eudora.Frontier");
commercial.createinstallfile ("Netscape", Netscape.id, destfolder + "Netscape.Frontier");
<<export.sendObject (@netscape.toys, destfolder + "netscape.toys")
export.sendObject (@user.getMailAddress, destfolder + "user.getMailAddress");
file.copy ("System:System Folder:Preferences:UserLand:Eudora:", destfolder + "Prefs Folder:");
local (installfolder = releasefolder + "Install Files:");
try {file.deleteFolder (installfolder)};
file.copy (destfolder, installfolder);
msg ("Backup complete at " + clock.now ())
This listing is for code that runs in the OPML Editor environment. I created these listings because I wanted the search engines to index it, so that when I want to look up something in my codebase I don't have to use the much slower search functionality in my object database. Dave Winer.