Monday, November 08, 2010 at 12:03 AM.
system.verbs.builtins.io.server.archiveOutline
on archiveOutline (username, opmltext) {
<<Changes
<<8/28/10; 1:41:28 PM by DW
<<Created.
local (adrdata = io.init (), adruser = io.server.initUser (username), now = clock.now (), startticks = clock.ticks ());
scratchpad.ausername = username; scratchpad.aopmltext = opmltext;
local (htmltext = "Archived an outline for user \"" + username + ".\"");
local (adrday = mainresponder.calendar.getdayaddress (@adruser^.calendar, now));
local (nametable = string.padwithzeros (++adruser^.stats.archiveSerialnum, 3));
local (adrtable = @adrday^.[nametable]);
new (tabletype, adrtable);
adrtable^.opmltext = opmltext;
adrtable^.ctAccesses = 0;
adrtable^.whenLastAccess = date (0);
adrtable^.whenCreated = now;
local (url = "http://" + adrdata^.server.prefs.archiveDomain + "/" + username + "/" + file.getdatepath ("/", now) + nametable + ".opml");
bundle { //logging
log2.add (realtime.server.data.log.source, "Archive", htmltext, startticks);
realtime.server.writeLog ()};
return (url)};
bundle { //test code
archiveOutline (scratchpad.ausername, scratchpad.aopmltext)}
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.