from calibre.web.feeds.news import BasicNewsRecipe


class DziennikZachodni(BasicNewsRecipe):
    title = 'Dziennik Zachodni'
    __author__ = 'fenuks'
    description = 'Gazeta Regionalna Dziennik Zachodni. Najnowsze Wiadomości Śląskie. Wiadomości Śląsk. Czytaj!'
    category = 'newspaper'
    language = 'pl'
    encoding = 'iso-8859-2'
    masthead_url = 'http://s.polskatimes.pl/g/logo_naglowek/dziennikzachodni.png?24'
    oldest_article = 7
    max_articles_per_feed = 100
    remove_empty_feeds = True
    no_stylesheets = True
    use_embedded_content = False
    ignore_duplicate_articles = {'title', 'url'}
    remove_tags_after = dict(attrs={'src': 'http://nm.dz.com.pl/dz.png'})
    remove_tags = [
        dict(id='mat-podobne'),
        dict(name='a', attrs={'class': 'czytajDalej'}),
        dict(attrs={'src': 'http://nm.dz.com.pl/dz.png'}),
        dict(attrs={'href': 'http://www.dziennikzachodni.pl/piano'}),
        dict(name='aside'),
    ]

    feeds = [
        ('Wszystkie', 'http://dziennikzachodni.feedsportal.com/c/32980/f/533764/index.rss?201302'),
        ('Wiadomo\u015bci', 'http://dziennikzachodni.feedsportal.com/c/32980/f/533765/index.rss?201302'),
        ('Regiony', 'http://www.dziennikzachodni.pl/rss/dziennikzachodni_regiony.xml?201302'),
        ('Opinie', 'http://www.dziennikzachodni.pl/rss/dziennikzachodni_regiony.xml?201302'),
        ('Blogi', 'http://www.dziennikzachodni.pl/rss/dziennikzachodni_blogi.xml?201302'),
        ('Serwisy', 'http://www.dziennikzachodni.pl/rss/dziennikzachodni_serwisy.xml?201302'),
        ('Sport', 'http://dziennikzachodni.feedsportal.com/c/32980/f/533766/index.rss?201302'),
        ('M\xf3j Reporter', 'http://www.dziennikzachodni.pl/rss/dziennikzachodni_mojreporter.xml?201302'),
        ('Na narty', 'http://www.dziennikzachodni.pl/rss/dziennikzachodni_nanarty.xml?201302'),
        ('Drogi', 'http://www.dziennikzachodni.pl/rss/dziennikzachodni_drogi.xml?201302'),
        ('Pieni\u0105dze', 'http://dziennikzachodni.feedsportal.com/c/32980/f/533768/index.rss?201302'),
    ]

    def print_version(self, url):
        return url.replace('artykul', 'drukuj')

    def skip_ad_pages(self, soup):
        if 'Advertisement' in soup.title:
            nexturl = soup.find('a')['href']
            return self.index_to_soup(nexturl, raw=True)

    def get_cover_url(self):
        soup = self.index_to_soup('http://www.prasa24.pl/gazeta/dziennik-zachodni/')
        self.cover_url = soup.find(id='pojemnik').img['src']
        return getattr(self, 'cover_url', self.cover_url)
