__license__ = 'GPL v3'
__copyright__ = '2009-2013, Darko Miletic <darko.miletic at gmail.com>'
'''
www.thestar.com
'''


def classes(classes):
    q = frozenset(classes.split(' '))
    return dict(attrs={'class': lambda x: x and frozenset(x.split()).intersection(q)})


from calibre.web.feeds.news import BasicNewsRecipe


class TheTorontoStar(BasicNewsRecipe):
    title = 'The Toronto Star'
    __author__ = 'Darko Miletic'
    description = "Thestar.com is Canada's largest online news site. Stay current with our sports, business entertainment news and more from the Toronto Star and thestar.com"  # noqa
    oldest_article = 2
    language = 'en_CA'
    max_articles_per_feed = 100
    no_stylesheets = True
    use_embedded_content = False
    delay = 2
    publisher = 'The Toronto Star'
    encoding = 'utf-8'
    masthead_url = 'http://www.thestar.com/etc/designs/thestar/images/general/logoLrg.png'

    keep_only_tags = [
        classes('o-main-content')
    ]
    remove_tags = [
        classes(
            'article-continue-basic-container label-modal-bottom print-header'
            ' cta-container share-toolbar-container c-related-articles c-partner-articles c-more-articles c-top-articles'),
        dict(name='button')
    ]
    remove_tags_after = [
        classes('article-content-container')
    ]

    feeds = [
        (u'News', u'http://www.thestar.com/feeds.articles.news.rss'),
        (u'Opinion', u'http://www.thestar.com/feeds.articles.opinion.rss'),
        (u'Business', u'http://www.thestar.com/feeds.articles.business.rss'),
        (u'Sports', u'http://www.thestar.com/feeds.articles.sports.rss'),
        (u'Entertainment', u'http://www.thestar.com/feeds.articles.entertainment.rss'),
        (u'Living', u'http://www.thestar.com/feeds.articles.life.rss'),
        (u'Travel', u'http://www.thestar.com/feeds.articles.life.travel.rss'),
        (u'Technology', u'http://www.thestar.com/feeds.articles.life.technology.rss')
    ]
