from calibre.web.feeds.news import BasicNewsRecipe
class EclipseOnline(BasicNewsRecipe):
	
	#
	# oldest_article specifies the maximum age, in days, of posts to retrieve.
	# The default of 32 is intended to work well with a "days of month = 1"
	# recipe schedule to download "monthly issues" of Eclipse Online.
	# Increase this value to include additional posts. However, the RSS feed
	# currently only includes the 10 most recent posts, so that's the max.
	#
	oldest_article = 32
	
	title = u'Eclipse Online'
	description = u'"Where strange and wonderful things happen, where reality is eclipsed for a little while with something magical and new." Eclipse Online is edited by Jonathan Strahan and published online by Night Shade Books. http://www.nightshadebooks.com/category/eclipse/'
	publication_type = 'magazine'
	language = 'en'
	
	__author__ = u'Jim DeVona'
	__version__ = '1.0'
	
	# For now, use this Eclipse Online logo as the ebook cover image.
	# (Disable the cover_url line to let Calibre generate a default cover, including date.)
	cover_url = 'http://www.nightshadebooks.com/wp-content/uploads/2012/10/Eclipse-Logo.jpg'
		
	# Extract the "post" div containing the story (minus redundant metadata) from each page.
	keep_only_tags = [dict(name='div', attrs={'class':lambda x: x and 'post' in x})]
	remove_tags = [dict(name='span', attrs={'class': ['post-author', 'post-category', 'small']})]

	# Nice plain markup (like Eclipse's) works best for most e-readers.
	# Disregard any special styling rules, but center illustrations.
	auto_cleanup = False
	no_stylesheets = True
	remove_attributes = ['style', 'align']
	extra_css = '.wp-caption {text-align: center;} .wp-caption-text {font-size: small; font-style: italic;}'
	
	# Tell Calibre where to look for article links. It will proceed to retrieve
	# these posts and format them into an ebook according to the above rules.
	feeds = ['http://www.nightshadebooks.com/category/eclipse/feed/']
