예제 #1
0
파일: __init__.py 프로젝트: Mic92/mygpo
def dashboard(request, episode_count=10):

    site = RequestSite(request)

    user = request.user
    subscribed_podcasts = user.get_subscribed_podcasts()
    devices = user.active_devices

    tomorrow = datetime.today() + timedelta(days=1)
    newest_episodes = user.get_newest_episodes(tomorrow)
    newest_episodes = islice(newest_episodes, 0, episode_count)

    lang = utils.get_accepted_lang(request)
    lang = utils.sanitize_language_codes(lang)

    # for performance reasons, we only consider the first three languages
    lang = lang[:3]
    random_podcasts = islice(backend.get_random_picks(lang), 0, 5)

    return render(request, 'dashboard.html', {
            'site': site,
            'devices': devices,
            'subscribed_podcasts': subscribed_podcasts,
            'newest_episodes': newest_episodes,
            'random_podcasts': random_podcasts,
        })
예제 #2
0
파일: views.py 프로젝트: deepak02/xyz_gpod
    def all_languages(self):
        """ Returns all 2-letter language codes that are used by podcasts.

        It filters obviously invalid strings, but does not check if any
        of these codes is contained in ISO 639. """

        query = Podcast.objects.exclude(language__isnull=True)
        query = query.distinct('language').values('language')

        langs = [o['language'] for o in query]
        langs = sorted(sanitize_language_codes(langs))

        return get_language_names(langs)
예제 #3
0
파일: views.py 프로젝트: Korvox/mygpo
    def all_languages(self):
        """ Returns all 2-letter language codes that are used by podcasts.

        It filters obviously invalid strings, but does not check if any
        of these codes is contained in ISO 639. """

        query = Podcast.objects.exclude(language__isnull=True)
        query = query.distinct('language').values('language')

        langs = [o['language'] for o in query]
        langs = sorted(sanitize_language_codes(langs))

        return get_language_names(langs)
예제 #4
0
파일: podcast.py 프로젝트: fk-lx/mygpo
def get_podcast_languages():
    """ Returns all 2-letter language codes that are used by podcasts.

    It filters obviously invalid strings, but does not check if any
    of these codes is contained in ISO 639. """

    from mygpo.web.utils import sanitize_language_codes

    res = Podcast.view('podcasts/by_language',
            group_level = 1,
            stale       = 'ok',
        )

    langs = [r['key'][0] for r in res]
    sane_lang = sanitize_language_codes(langs)
    sane_lang.sort()
    return sane_lang