"""
commons.py
"""

from django.shortcuts import render
from django.utils.timezone import now

from events.models import Event
from teams.models import Team


def get_template_with_context(request, template, context=None):
    """
    Returns the rendered template with the teams in context.
    :param request: The request
    :param template: Template to use
    :param context: Context to use, if already exists. This is appended with teams.
    :return: Rendered template with context
    """
    teams = Team.objects.all().filter(is_active=True).order_by('gender', 'name', 'order')
    events = Event.objects.filter(published_at__lte=now()).exclude(begin__lt=now()).order_by('begin')

    if context is None:
        context = {}
    context.update({'teams': teams, 'events': events})
    return render(request, template, context)
