56 lines
		
	
	
	
		
			1.7 KiB
		
	
	
	
		
			XML
		
	
	
		
			Executable file
		
	
	
	
	
			
		
		
	
	
			56 lines
		
	
	
	
		
			1.7 KiB
		
	
	
	
		
			XML
		
	
	
		
			Executable file
		
	
	
	
	
| fn display_rss{
 | |
| 	echo '<?xml version="1.0" encoding="UTF-8"?>'
 | |
| 	echo '<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">'
 | |
| 	echo '<channel>'
 | |
| 	echo '<atom:link href="'$base_url^$req_path'" rel="self" type="application/rss+xml" />'
 | |
| 	echo '<title><![CDATA['$"siteTitle']]></title>'
 | |
| 	echo '<link>'$base_url^$barf_base_uri'</link>'
 | |
| 	echo '<description><![CDATA['$"blogDesc']]></description>'
 | |
| 	echo '<generator><![CDATA[barf]]></generator>'
 | |
| 	echo '<lastBuildDate>'
 | |
| 	ndate -m `{date `{mtime $barf_root/$"barf_dir/src | awk '{print $1}'}}	# rfc2822 last time channel content changed.
 | |
| 	echo -n '</lastBuildDate>'
 | |
| 	echo '<language>en-us</language>'
 | |
| 	date=`{ndate -m}	# rfc2822 publication date for content in the channel.
 | |
| 	get_post_list
 | |
| 	for(i in `{seq 1 $#posts}){
 | |
| 		a_id=$posts($i)
 | |
| 		a_dir=$barf_root/$"barf_dir/src/$a_id
 | |
| 		echo '<item>'
 | |
| 		echo '<guid isPermaLink="true">'$base_url^$barf_base_uri'?id='$"a_id'</guid>'
 | |
| 		echo '<pubDate>'$"date'</pubDate>'
 | |
| 		title=`{cat $a_dir/title}
 | |
| 		if(~ $title '')
 | |
| 			ntitle=($siteTitle $"a_id)
 | |
| 		if not
 | |
| 			ntitle=$title
 | |
| 		echo '<title>'$"ntitle'</title>'
 | |
| 		echo '<link>'$base_url^$barf_base_uri'?id='$"a_id'</link>'
 | |
| 		echo '<description><![CDATA['
 | |
| 		if(~ $obarf_type image){
 | |
| 			if(! ~ $#a_link 0)
 | |
| 				link=$"a_link
 | |
| 			if not
 | |
| 				link=$base_url^$barf_base_uri'?id='$"a_id
 | |
| 			echo '<p>source: <a href="'$"link'">link</a></p>'
 | |
| 		}
 | |
| 		a_tags=`{ls -p $a_dir/tags}
 | |
| 		if(! ~ $#a_tags 0){
 | |
| 			echo '<p>tags: '
 | |
| 			print_tags
 | |
| 			echo '</p>'
 | |
| 			echo '<p>'
 | |
| 		}
 | |
| 		# begin ugly if statements
 | |
| 		if(~ $obarf_type paste)
 | |
| 			echo '<pre>'
 | |
| 		if(! ~ $obarf_type image)
 | |
| 		cat $a_dir/body
 | |
| 		if(~ $obarf_type paste)
 | |
| 			echo '</pre>'
 | |
| 		if(~ $obarf_type image)
 | |
| 			print_img
 | |
| 		echo '</p>]]></description></item>'
 | |
| 	}
 | |
| 	echo '</channel></rss>'
 | |
| }
 | 
