9afe3e87fcc42a776cd1ddf2c9f2e605f3ee7e9b
[wolnelektury.git] / src / dictionary / templatetags / set_get.py
1 # -*- coding: utf-8 -*-
2 # This file is part of Wolnelektury, licensed under GNU Affero GPLv3 or later.
3 # Copyright © Fundacja Nowoczesna Polska. See NOTICE for more information.
4 #
5 from django import template
6 from django.utils.http import urlencode
7
8 register = template.Library()
9
10
11 @register.simple_tag(takes_context=True)
12 def set_get(context, *omit, **kwargs):
13     request = context['request']
14     query = request.GET.dict()
15     for k in omit:
16         if k in query:
17             del query[k]
18     for k, v in kwargs.items():
19         query[k] = v
20     return urlencode(query)