Tuesday, August 18, 2009 at 7:55 PM.

lifeLinerSuite.init

<<Changes
	<<7/24/09; 6:39:44 PM by DW
		<<Init the <cloud> element to use http-post method instead of xml-rpc. Avoid religious issue. 
	<<7/12/09; 10:19:10 AM by DW
		<<Created. 
local (adrdata = @config.lifeLiner);
if not defined (adrdata^) {
	new (tabletype, adrdata)};
bundle { //prefs
	if not defined (adrdata^.prefs) {
		new (tabletype, @adrdata^.prefs)};
	<<if not defined (adrdata^.prefs.s3Path)
		<<adrdata^.prefs.s3Path = ""
	if not defined (adrdata^.prefs.serverUrl) {
		adrdata^.prefs.serverUrl = "xmlrpc://rpc.lifeliner.org:5337/RPC2"};
	if not defined (adrdata^.prefs.username) {
		adrdata^.prefs.username = ""};
	if not defined (adrdata^.prefs.password) {
		adrdata^.prefs.password = ""};
	if not defined (adrdata^.prefs.lastEnclosureUrl) {
		adrdata^.prefs.lastEnclosureUrl = ""};
	bundle { //feed prefs
		if not defined (adrdata^.prefs.feed) {
			new (tabletype, @adrdata^.prefs.feed)};
		if not defined (adrdata^.prefs.feed.title) {
			adrdata^.prefs.feed.title = "My LifeLiner"};
		if not defined (adrdata^.prefs.feed.link) {
			adrdata^.prefs.feed.link = "http://lifeliner.org/"};
		if not defined (adrdata^.prefs.feed.docs) {
			adrdata^.prefs.feed.docs = "http://cyber.law.harvard.edu/rss/rss.html"};
		if not defined (adrdata^.prefs.feed.description) {
			adrdata^.prefs.feed.description = "Something interesting goes here."};
		if not defined (adrdata^.prefs.feed.language) {
			adrdata^.prefs.feed.language = "en-us"};
		bundle { //cloud, use REST, 7/24/09 by DW
			if not defined (adrdata^.prefs.feed.cloud) {
				new (tabletype, @adrdata^.prefs.feed.cloud)};
			if not defined (adrdata^.prefs.feed.cloud.server) {
				adrdata^.prefs.feed.cloud.server = "rpc.rsscloud.org"};
			if not defined (adrdata^.prefs.feed.cloud.port) {
				adrdata^.prefs.feed.cloud.port = 5337};
			if not defined (adrdata^.prefs.feed.cloud.path) {
				adrdata^.prefs.feed.cloud.path = "/rsscloud/pleaseNotify"};
			if not defined (adrdata^.prefs.feed.cloud.protocol) {
				adrdata^.prefs.feed.cloud.protocol = "http-post"};
			if not defined (adrdata^.prefs.feed.cloud.registerProcedure) {
				adrdata^.prefs.feed.cloud.registerProcedure = ""}};
		<<bundle //cloud, use XML-RPC, commented
			<<if not defined (adrdata^.prefs.feed.cloud)
				<<new (tabletype, @adrdata^.prefs.feed.cloud)
			<<if not defined (adrdata^.prefs.feed.cloud.server)
				<<adrdata^.prefs.feed.cloud.server = "rpc.lifeliner.org"
			<<if not defined (adrdata^.prefs.feed.cloud.port)
				<<adrdata^.prefs.feed.cloud.port = 5337
			<<if not defined (adrdata^.prefs.feed.cloud.path)
				<<adrdata^.prefs.feed.cloud.path = "/RPC2"
			<<if not defined (adrdata^.prefs.feed.cloud.protocol)
				<<adrdata^.prefs.feed.cloud.protocol = "xml-rpc"
			<<if not defined (adrdata^.prefs.feed.cloud.registerProcedure)
				<<adrdata^.prefs.feed.cloud.registerProcedure = "rssCloud.pleaseNotify"
		bundle { //image
			if not defined (adrdata^.prefs.feed.image) {
				new (tabletype, @adrdata^.prefs.feed.image)};
			if not defined (adrdata^.prefs.feed.image.url) {
				local (adrtable = @lifeLinerSuite.data.defaultImages);
				local (url = adrtable^ [random (1, sizeof (adrtable^))]);
				adrdata^.prefs.feed.image.url = url;
				local (f = frontier.getsubfolder ("ops/temp/") + string.lastfield (url, "/"));
				file.writewholefile (f, tcp.httpreadurl (url));
				local (hw = html.getImageHeightWidth (f));
				adrdata^.prefs.feed.image.height = hw [1];
				adrdata^.prefs.feed.image.width = hw [2]}}}};
bundle { //stats
	if not defined (adrdata^.stats) {
		new (tabletype, @adrdata^.stats)};
	if not defined (adrdata^.stats.rssUrl) {
		adrdata^.stats.rssUrl = ""}};
if not defined (adrdata^.outline) {
	new (outlinetype, @adrdata^.outline);
	local (oldtarget = target.set (@adrdata^.outline));
	op.attributes.setone ("created", date.netstandardstring (clock.now ()));
	<<wp.settextmode (true)
	target.set (oldtarget)};
return (adrdata)



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.