# Copyright (c) 2013, Web Notes Technologies Pvt. Ltd.
# License: GNU General Public License v3. See license.txt 
from __future__ import unicode_literals
"""
Generate RSS feed for blog
"""
rss = u"""
        %(title)s
        %(description)s
        %(link)s
        %(modified)s
        %(modified)s
        1800
		%(items)s
"""
rss_item = u"""
- 
        %(title)s
        %(content)s
        %(link)s
        %(name)s
        %(published_on)s
"""
def generate():
	"""generate rss feed"""
	import os, urllib
	import webnotes
	from webnotes.model.doc import Document
	from webnotes.utils import escape_html
	
	host = (os.environ.get('HTTPS') and 'https://' or 'http://') + os.environ.get('HTTP_HOST')
	
	items = ''
	blog_list = webnotes.conn.sql("""\
		select page_name as name, published_on, modified, title, content from `tabBlog Post` 
		where ifnull(published,0)=1
		order by published_on desc limit 20""", as_dict=1)
	for blog in blog_list:
		blog.link = urllib.quote(host + '/' + blog.name + '.html')
		blog.content = escape_html(blog.content or "")
		
		items += rss_item % blog
	modified = max((blog['modified'] for blog in blog_list))
		
	ws = Document('Website Settings', 'Website Settings')
	return (rss % {
				'title': ws.title_prefix,
				'description': ws.description or (ws.title_prefix + ' Blog'),
				'modified': modified,
				'items': items,
				'link': host + '/blog.html'
			}).encode('utf-8', 'ignore')