Monday, November 08, 2010 at 12:05 AM.
system.verbs.builtins.radio.weblog.publishRss
on publishRss (adrblog=radio.weblog.init ()) { <<Changes <<3/12/02; 3:12:19 PM by JES <<Implement a getUrl callback to be called by radio.weblog.writeRssFile. The callback determines the url for a given post, and returns true if the url can be determined, or false if not. <<1/25/02; 11:30:41 AM by JES <<Added a callback script, which makes radio.weblog.writeRssFile not include posts which have an flNotOnHomePage == true in the post table. <<1/21/02; 5:52:44 PM by DW <<Add support for language. <<1/20/02; 11:22:36 AM by DW <<Overhaul. Factored the guts of this routine into radio.weblog.writeRssFile. local (f); bundle { //set f local (pc = file.getpathchar ()); local (partialpath = string.replaceall (adrblog^.prefs.rssFilePath, "/", pc)); if (partialpath beginswith pc) and (user.radio.prefs.wwwfolder endswith pc) { partialpath = string.delete (partialpath, 1, 1)}; f = user.radio.prefs.wwwfolder + partialpath}; local (title = adrblog^.prefs.title); local (link = radio.weblog.getUrl (adrblog)); local (description = string (adrblog^.prefs.description)); local (language = string (adrblog^.prefs.language)); local (maxdays = adrblog^.prefs.ctDaysToDisplay); on callback (adrpost) { //don't include items with flNotOnHomePage == true if defined (adrpost^.flNotOnHomePage) { return (not adrpost^.flNotOnHomePage)}; return (true)}; on getUrlCallback (adrpost, adrurl) { return (radio.weblog.getUrlForPost (adrpost, adrurl, adrdata:adrblog) )}; return (radio.weblog.writeRssFile (f, title, link, description, language, flcategories:true, maxdays:maxdays, adrcallback:@callback, adrblog:adrblog, adrGetUrlCallback:@getUrlCallback))} <<bundle //test code <<local (tc = clock.ticks ()) <<publishRss () <<dialog.alert (clock.ticks () - tc)
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.