Thursday, March 31, 2011 at 1:05 AM.
river2Suite.initUser
on initUser (adruser) { <<Changes <<3/29/11; 5:27:37 PM by DW <<Init adruser^.prefs.maxRiverItems. <<3/27/11; 2:35:25 PM by DW <<Init adruser^.prefs.static.flBuildJavaScriptInclude, default false. <<2/4/11; 4:20:37 PM by DW <<Init beautifulRiver prefs. <<12/5/10; 2:58:13 PM by DW <<Init stats for timing of various builds. <<11/9/10; 7:57:03 AM by DW <<Init callbacks table, with a single callback -- afterStaticFileWrite. <<11/7/10; 3:56:59 PM by DW <<Init adruser^.prefs.urlReadingList. <<3/26/10; 1:37:03 PM by DW <<More prefs for per-user static rendering: bottomPageText, pageTitle. <<3/26/10; 8:20:04 AM by DW <<Static rendering prefs and stats. <<12/24/09; 8:46:26 AM by DW <<Add items sub-table for each feed. <<12/23/09; 10:27:13 AM by DW <<Init status info for the user's feeds. <<11/24/09; 10:29:35 AM by DW <<Created. if not defined (adruser^) { new (tabletype, adruser)}; bundle { //prefs if not defined (adruser^.prefs) { new (tabletype, @adruser^.prefs)}; if not defined (adruser^.prefs.password) { adruser^.prefs.password = ""}; bundle { //static, 3/26/10 by DW if not defined (adruser^.prefs.static) { new (tabletype, @adruser^.prefs.static)}; if not defined (adruser^.prefs.static.enabled) { adruser^.prefs.static.enabled = false}; if not defined (adruser^.prefs.static.topPageText) { adruser^.prefs.static.topPageText = ""}; if not defined (adruser^.prefs.static.bottomPageText) { adruser^.prefs.static.bottomPageText = ""}; if not defined (adruser^.prefs.static.pageTitle) { adruser^.prefs.static.pageTitle = ""}; if not defined (adruser^.prefs.static.flBuildJavaScriptInclude) { //3/27/11 by DW adruser^.prefs.static.flBuildJavaScriptInclude = false}}; if not defined (adruser^.prefs.urlReadingList) { //11/7/10 by DW adruser^.prefs.urlReadingList = ""}; if not defined (adruser^.prefs.maxRiverItems) { //3/29/11 by DW adruser^.prefs.maxRiverItems = 100}; bundle { //beautifulRiver, 2/4/11 DW river2Suite.initBeautifulRiverPrefs (adruser)}}; bundle { //stats if not defined (adruser^.stats) { new (tabletype, @adruser^.stats)}; if not defined (adruser^.stats.ctInits) { adruser^.stats.ctInits = 0}; adruser^.stats.ctInits++; if not defined (adruser^.stats.cloudPipeServer) { new (tabletype, @adruser^.stats.cloudPipeServer)}; if not defined (adruser^.stats.cloudPipeServer.ctServerCalls) { adruser^.stats.cloudPipeServer.ctServerCalls = 0}; if not defined (adruser^.stats.cloudPipeServer.ctServerLoops) { adruser^.stats.cloudPipeServer.ctServerLoops = 0}; if not defined (adruser^.stats.cloudPipeServer.ctTimeouts) { adruser^.stats.cloudPipeServer.ctTimeouts = 0}; if not defined (adruser^.stats.ctJsIncludeBuilds) { //12/5/10 by DW adruser^.stats.ctJsIncludeBuilds = 0}; if not defined (adruser^.stats.ctJsonBuilds) { //12/5/10 by DW adruser^.stats.ctJsonBuilds = 0}}; bundle { //callbacks -- 11/9/10 by DW if not defined (adruser^.callbacks) { new (tabletype, @adruser^.callbacks)}; if not defined (adruser^.callbacks.afterStaticFileWrite) { new (tabletype, @adruser^.callbacks.afterStaticFileWrite)}}; if not defined (adruser^.feeds) { new (tabletype, @adruser^.feeds)}; bundle { //init the user's feeds, 12/22/09 by DW local (adrfeed); for adrfeed in @adruser^.feeds { if not defined (adrfeed^.flRealtimeUpdate) { adrfeed^.flRealtimeUpdate = false}; if not defined (adrfeed^.whenLastRealtimeUpdate) { adrfeed^.whenLastRealtimeUpdate = date (0)}; if not defined (adrfeed^.itemSerialnum) { adrfeed^.itemSerialnum = 0}; if not defined (adrfeed^.items) { new (tabletype, @adrfeed^.items)}}}; return (true)}; bundle { //test code initUser (@config.river2.users.bullMancuso)}
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.