<div class="languages">{% if language is not defined %}{% set language = languageMgr.getCurrentLanguage() %}{% else %}{{ languageMgr.switchTo(language) }}{% endif %}{% set route = app.request.attributes.get('_route') %}{% set params = app.request.attributes.get('_route_params') %}{% if params %}{% for locale in locales %}{% if not loop.first %}|{% endif %}{% if locale != app.request.locale %}{% if route == 'product' %}{% set descr = product.getProductDescription(locale) %}{% set params = params|merge({'_locale': locale, 'url':descr.url}) %}{% elseif (route == 'category') or (route == 'universe') %}{% set descr = category.getCategoryDescription(locale) %}{% set params = params|merge({'_locale': locale, 'url':descr.url}) %}{% elseif route == 'page' %}{% set descr = page.getPageDescription(locale) %}{% set params = params|merge({'_locale': locale, 'url':descr.url}) %}{% elseif route == 'manufacturer' %}{% set descr = manufacturer.getManufacturerDescription(locale) %}{% set params = params|merge({'_locale': locale, 'url':descr.url}) %}{% else %}{% set params = params|merge({'_locale': locale}) %}{% endif %}{% set redirect = path(route, params) %}<a href="{{ redirect }}" onclick="document.location = atob('{{ path('change_locale',{_locale:locale,redirect:redirect})|raw|base64_encode }}'); return false;">{{ locale }}</a>{% else %}<span>{{ locale }}</span>{% endif %}{% endfor %}{% endif %}</div>