#!/usr/bin/env python
# vim:fileencoding=utf-8

from __future__ import absolute_import, division, print_function, unicode_literals

from calibre.web.feeds.news import BasicNewsRecipe

'''
ACM Queue Magazine
'''


class QueueAcmOrg(BasicNewsRecipe):
    title = "ACM Queue Magazine"
    __author__ = 'yodha8'
    description = "Queue is the ACM magazine for practicing software engineers. Published once every 2 months. Example: Jan-Feb."
    oldest_article = 60
    max_articles_per_feed = 50
    auto_cleanup = True
    language = 'en'
    cover_url = "https://queue.acm.org/img/acmqueue_logo.gif"

    feeds = [
        ("All Queue Content", "https://queue.acm.org/rss/feeds/queuecontent.xml"),
    ]

    def get_cover_url(self):
        soup = self.index_to_soup('https://queue.acm.org/')
        imgs = soup.find_all(
            'img',
            attrs={
                'src': lambda x: x
                and x.startswith('/app/')
            },
        )
        if len(imgs) > 0:
            self.cover_url = 'https://queue.acm.org/' + imgs[0]['src']
        return getattr(self, 'cover_url', self.cover_url)
