Monday, May 30, 2011

Re: setlang using AJAX

Hi Luca,

this is what i had on my site:

<ul class="language-bar">
{% ifequal LANGUAGE_CODE 'sk' %}
<li><span class="lb-sk">{% trans 'Slovak' %}</span></li>
<li><a class="lb-en" href="#en" title="{% trans 'English' %}">{%
trans 'English' %}</a></li>
{% else %}
<li><a class="lb-sk" href="#sk" title="{% trans 'Slovak' %}">{%
trans 'Slovak' %}</a></li>
<li><span class="lb-en">{% trans 'English' %}</span></li>
{% endifequal %}
</ul>
<script type="text/javascript">
$('.language-bar a').click(function(){
$.post('/i18n/setlang/', {language:$(this).attr('href').split('#')
[1], next:"{{request.path}}" },function(data)
{top.location.href="{{request.path}}";});
return false;
});
</script>

Maybe it is not the best solution, but it's much nicer than
selectboxes. It reloads the whole page,but it's not a problem adjust
it to your needs.

Radovan

On 30. Máj, 16:19 h., Luca Casagrande <luca.casagra...@gmail.com>
wrote:
> Hi Radovan,
> this code should go on a web page before the real application.
> Basically I'd like to have the user click on a flag representing the
> language and load the real site with the appropriate language.
>
> Thanks
> L.
>
> On 30 Mag, 15:30, urukay <radovan.be...@gmail.com> wrote:
>
> > hi,
>
> > but you have to reload the whole page anyway or you want only part of
> > the page to be translated?
> > There's a way to change language without form.
>
> > R.
>
> > On 30. Máj, 13:07 h., Luca Casagrande <luca.casagra...@gmail.com>
> > wrote:
>
> > > Hello everybody,
> > > I'd like to use an AJAX request without any form to change the
> > > language of my site.
> > > My problem is that I haven't found a way to avoid the csrf_token
> > > error..
> > > How can I generate the token without any form?
>
> > > The other way it to use setlang with a GET request but, according to
> > > docs, this seems no more possible.
>
> > > Thanks for your support.
> > > Luca

--
You received this message because you are subscribed to the Google Groups "Django users" group.
To post to this group, send email to django-users@googlegroups.com.
To unsubscribe from this group, send email to django-users+unsubscribe@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/django-users?hl=en.

No comments:

Post a Comment