[Zope-CMF] Charsets
Charlie Clark
charlie at begeistert.org
Wed Jan 21 03:39:26 EST 2009
Am 21.01.2009 um 00:11 schrieb Daniel Nouri:
> Is this thread by any chance related to this bug:
> https://bugs.launchpad.net/zope2/+bug/160968
>
> The IUserPreferredCharsets implementation of Zope 3 found in
> zope.publisher.http.HTTPCharsets has the following condition in it
> to check if the HTTP_ACCEPT_CHARSET header is available:
>
> header_present = 'HTTP_ACCEPT_CHARSET' in self.request
>
> However, with Zope 2's request will return '' (the empty string) for
> any header that starts with 'HTTP_', see
> ZPublisher.HTTPRequest.HTTPRequest.get.
>
> Ultimately, this results in the HTTPCharsets.getPreferredCharsets to
> return ['iso-8859-1'], where it should really return 'UTF-8'.
>
> To understand this problem better, look at
> Products.Five.browser.decode.processInputs, which uses the
> negotiator to find out which charset to use to convert form
> variables. For browsers that do not send the 'HTTP_ACCEPT_CHARSET'
> header, this will result in wrongly encoded form values. To
> reproduce this, fill in Chinese characters to any Five formlib form
> with Internet Explorer 6.0. Since Firefox sends HTTP_ACCEPT_CHARSET,
> it's not a problem there.
Yes Daniel,
this is exactly the problem we're facing. So we need to fix Zope >=
2.10 and then we shouldn't have to worry about doing anything to the
CMF.
Charlie
--
Charlie Clark
Helmholtzstr. 20
Düsseldorf
D- 40215
Tel: +49-211-938-5360
GSM: +49-178-782-6226
More information about the Zope-CMF
mailing list