__license__   = 'GPL v3'
__copyright__ = '2010, Darko Miletic <darko.miletic at gmail.com>'
'''
www.elpais.com/suple/eps/
'''

from calibre import strftime
from calibre.web.feeds.news import BasicNewsRecipe

class ElPaisSemanal(BasicNewsRecipe):
    title                 = 'El Pais semanal'
    __author__            = 'Darko Miletic'
    description           = 'Revista semanal de diario El Pais'
    publisher             = 'EL PAIS S.L.'
    category              = 'news, politics, Spain'
    no_stylesheets        = True
    encoding              = 'cp1252'
    use_embedded_content  = False
    language              = 'es'
    publication_type      = 'magazine'    
    masthead_url          = 'http://www.elpais.com/im/tit_logo_int.gif'
    index                 = 'http://www.elpais.com/suple/eps/'
    extra_css             = ' p{text-align: justify} body{ text-align: left; font-family: Georgia,"Times New Roman",Times,serif } h2{font-family: Arial,Helvetica,sans-serif} img{margin-bottom: 0.4em} '

    conversion_options = {
                          'comment'      : description
                        , 'tags'         : category
                        , 'publisher'    : publisher
                        , 'language'     : language
                        }

    keep_only_tags=[dict(attrs={'class':['cabecera_noticia','contenido_noticia']})]
    remove_attributes=['width','height']
    remove_tags=[dict(name='link')]

    def parse_index(self):
        articles = []
        soup = self.index_to_soup(self.index)
        for item in soup.findAll('a',attrs={'class':['g19i003','g17r003','g17i003']}):
            description = ''
            title_prefix = ''
            feed_link = item
            if item.has_key('href'):
                url   = 'http://www.elpais.com' + item['href'].rpartition('/')[0]
                title = title_prefix + self.tag_to_string(feed_link)
                date  = strftime(self.timefmt)
                articles.append({
                                  'title'      :title
                                 ,'date'       :date
                                 ,'url'        :url
                                 ,'description':description
                                })
        return [(soup.head.title.string, articles)]

    def print_version(self, url):
        return url + '?print=1'
