Skip to main content
Help us improve PyPI by participating in user testing. All experience levels needed!

I18n File and Image -- Zope 3 Content Components

Project description

This package provides an extension to the File and Image content components for Zope 3, allowing the content to be localized.

Detailed Dcoumentation

I18nFile tests

First, let’s create an I18nFile instance:

>>> print http(r"""
... POST /@@contents.html HTTP/1.1
... Authorization: Basic mgr:mgrpw
... """, form={"type_name": "BrowserAdd__zope.app.i18nfile.i18nfile.I18nFile",
...            "new_value": "i18nfile"})
HTTP/1.1 303 See Other
...

Then add some sample data for default (en) language:

>>> print http(r"""
... POST /i18nfile/edit.html HTTP/1.1
... Authorization: Basic mgr:mgrpw
... """, form={"contentType": "text/plain",
...            "defaultLanguage": "en",
...            "language": "en",
...            "newLanguage": "",
...            "data": "English",
...            "edit": "Save"})
HTTP/1.1 303 See Other
...

Ok, now we can view the data in the edit form:

>>> print http(r"""
... GET /i18nfile/editForm.html?language=en HTTP/1.1
... Authorization: Basic mgr:mgrpw
... """)
HTTP/1.1 200 OK
...
        <textarea ...>English</textarea>
...

and as file content:

>>> print http(r"""
... GET /i18nfile/index.html HTTP/1.1
... Authorization: Basic mgr:mgrpw
... """)
HTTP/1.1 200 OK
...
English

Let’s add new (russian) language:

>>> print http(r"""
... POST /i18nfile/edit.html HTTP/1.1
... Authorization: Basic mgr:mgrpw
... """, form={"contentType": "text/plain",
...            "defaultLanguage": "en",
...            "language": "en",
...            "addLanguage": "Add new language",
...            "newLanguage": "ru",
...            "data": "English"})
HTTP/1.1 303 See Other
...

and add some sample data for russian (ru) language:

>>> print http(r"""
... POST /i18nfile/edit.html HTTP/1.1
... Authorization: Basic mgr:mgrpw
... """, form={"contentType": "text/plain",
...            "defaultLanguage": "en",
...            "language": "ru",
...            "newLanguage": "",
...            "data": "Russian",
...            "edit": "Save"})
HTTP/1.1 303 See Other
...

Then we can view sample data for russain language in the edit form:

>>> print http(r"""
... GET /i18nfile/editForm.html?language=ru HTTP/1.1
... Authorization: Basic mgr:mgrpw
... """)
HTTP/1.1 200 OK
...
        <textarea ...>Russian</textarea>
...

and if our preferred language is russian as file content:

>>> print http(r"""
... GET /i18nfile/index.html HTTP/1.1
... Authorization: Basic mgr:mgrpw
... Accept-Language: ru,en
... """)
HTTP/1.1 200 OK
...
Russian

I18nImage tests

First, let’s create an I18nImage instance:

>>> print http(r"""
... POST /@@contents.html HTTP/1.1
... Authorization: Basic mgr:mgrpw
... """, form={
...      "type_name": "BrowserAdd__zope.app.i18nfile.i18nimage.I18nImage",
...      "new_value": "i18nimage"})
HTTP/1.1 303 See Other
...

Then add some sample image data for default (en) language:

>>> print http(r"""
... POST /i18nimage/uploadAction.html HTTP/1.1
... Authorization: Basic mgr:mgrpw
... """, form={"contentType": "image/gif",
...            "defaultLanguage": "en",
...            "language": "en",
...            "newLanguage": "",
...            "data": 'GIF89aENEN',
...            "edit": "Save"})
HTTP/1.1 303 See Other
...

Ok, now we can view the image size in the edit form:

>>> print http(r"""
... GET /i18nimage/upload.html?language=en HTTP/1.1
... Authorization: Basic mgr:mgrpw
... """)
HTTP/1.1 200 OK
...
...>1 KB 20037x20037</...
...

and the image data as file content:

>>> print http(r"""
... GET /i18nimage/ HTTP/1.1
... Authorization: Basic mgr:mgrpw
... """)
HTTP/1.1 200 OK
Content-Length: 10
Content-Type: image/gif
<BLANKLINE>
GIF89aENEN

Let’s add new (russian) language:

>>> print http(r"""
... POST /i18nimage/uploadAction.html HTTP/1.1
... Authorization: Basic mgr:mgrpw
... """, form={"contentType": "image/gif",
...            "defaultLanguage": "en",
...            "language": "en",
...            "addLanguage": "Add new language",
...            "newLanguage": "ru",
...            "data": ""})
HTTP/1.1 303 See Other
...

and add some sample image data for russian (ru) language:

>>> print http(r"""
... POST /i18nimage/uploadAction.html HTTP/1.1
... Authorization: Basic mgr:mgrpw
... """, form={"contentType": "image/gif",
...            "defaultLanguage": "en",
...            "language": "ru",
...            "newLanguage": "",
...            "data": "GIF89aRURU",
...            "edit": "Save"})
HTTP/1.1 303 See Other
...

Then we can view the size of sample image for russain language in the edit form:

>>> print http(r"""
... GET /i18nimage/upload.html?language=ru HTTP/1.1
... Authorization: Basic mgr:mgrpw
... """)
HTTP/1.1 200 OK
...
...>1 KB 21842x21842</...
...

and if our preferred language is russian we can view the image as file content:

>>> print http(r"""
... GET /i18nimage/ HTTP/1.1
... Authorization: Basic mgr:mgrpw
... Accept-Language: ru,en
... """)
HTTP/1.1 200 OK
Content-Length: 10
Content-Type: image/gif
<BLANKLINE>
GIF89aRURU

CHANGES

3.4.1 (2007-10-31)

  • Resolve ZopeSecurityPolicy deprecation warning.

3.4.0 (2007-10-24)

  • Initial release independent of the main Zope tree.

Release history Release notifications

This version
History Node

3.4.1

History Node

3.4.0

History Node

3.4.0a1

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Filename, size & hash SHA256 hash help File type Python version Upload date
zope.app.i18nfile-3.4.1.tar.gz (11.4 kB) Copy SHA256 hash SHA256 Source None Oct 31, 2007

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging CloudAMQP CloudAMQP RabbitMQ AWS AWS Cloud computing Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page