Tuesday, March 29, 2011 at 1:07 AM.


on subscribeList (url, adrname=nil, adruser=nil) {
		<<3/24/11; 12:37:29 PM by DW
			<<Optional adruser param. If non-nil, it's not an error to subscribe to a list we're already subscribed to. Also if non-nil, add the URL of the list to the user's feeds table.
		<<9/16/09; 10:37:20 AM by DW
			<<Add optional adrname parameter, returns the name of the list.
		<<9/1/09; 11:56:48 AM by DW
			<<Deleted a big old comment.
		<<8/16/09; 10:51:03 AM by DW
	local (adrdata = river2suite.init (), now = clock.now (), startticks = clock.ticks ());
	if defined (adrdata^.lists.[url]) {
		if adruser == nil {
			scriptError ("Pardon me sir or madam. You're already subscribed to that reading list.")}}
	else {
		river2Suite.readList (url)};
	if adruser != nil { //3/24/11 by DW
		new (tabletype, @adruser^.feeds.[url])};
	if adrname != nil {
		if defined (adrdata^.lists.[url]) {
			adrname^ = adrdata^.lists.[url].listinfo.title}}};
bundle { //test code
	subscribeList ("http://newsriver.org/podcastReadingList.opml")}

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.