{ "info": { "author": "Roger Ineichen and the Zope Community", "author_email": "zope-dev@zope.org", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Environment :: Web Environment", "Framework :: Zope3", "Intended Audience :: Developers", "License :: OSI Approved :: Zope Public License", "Natural Language :: English", "Operating System :: OS Independent", "Programming Language :: Python", "Topic :: Internet :: WWW/HTTP" ], "description": "This package provides an implementation wich let's you implement your own i18n\naware content types.\n\n\nDetailed Documentation\n**********************\n\n=================\nLangauge Switcher\n=================\n\nLet's show how ``z3c.language.switch`` works:\n\nImports and placeless setup:\n\n >>> import zope.component\n >>> from zope.app.testing import placelesssetup\n >>> from z3c.language.switch import II18nLanguageSwitch\n >>> from z3c.language.switch.testing import IContentObject\n >>> from z3c.language.switch.testing import II18nContentObject\n >>> from z3c.language.switch.testing import I18nContentObject\n >>> from z3c.language.switch.testing import I18nContentObjectLanguageSwitch\n >>> from z3c.language.switch.testing import ContentObject\n >>> placelesssetup.setUp()\n\nSetup test object:\n\n >>> en_title = u'en_title'\n >>> obj = I18nContentObject(en_title)\n >>> obj.title\n u'en_title'\n\nAdd additional languages:\n\n >>> de_title = u'de_title'\n >>> fr_title = u'fr_title'\n >>> deObj = obj.addLanguage('de', de_title)\n >>> frObj = obj.addLanguage('fr', fr_title)\n\nSwitch default language:\n\n >>> obj.title\n u'en_title'\n\n >>> obj.setDefaultLanguage('de')\n >>> obj.title\n u'de_title'\n\nRemove the 'en' language object:\n\n >>> obj._data.keys()\n ['de', 'en', 'fr']\n >>> obj.removeLanguage('en')\n >>> obj._data.keys()\n ['de', 'fr']\n\nRemove default language object will end in a ``ValueError`` error:\n\n >>> obj.removeLanguage('de')\n Traceback (most recent call last):\n ...\n ValueError: cannot remove default language (de)\n\nRemove nonexistent language object will end in a ``ValueError`` error:\n\n >>> obj.removeLanguage('undefined')\n Traceback (most recent call last):\n ...\n ValueError: cannot remove nonexistent language (undefined)\n\nSet default language to a non existent language will end in a ``ValueError``:\n\n >>> obj.setDefaultLanguage('en')\n Traceback (most recent call last):\n ...\n ValueError: cannot set nonexistent language (en) as default\n\nAccess the language directly via the ``II18nLanguageSwitch`` adapter,\nfirst register the adapter for the ``I18nContentObject``:\n\n >>> zope.component.provideAdapter(I18nContentObjectLanguageSwitch,\n ... (II18nContentObject,), provides=II18nLanguageSwitch)\n\nThe adapter is set to the default language in the init method:\n\n >>> adapted = II18nLanguageSwitch(obj)\n >>> adapted.title\n u'de_title'\n\nChange the default language and access the title again, the title should not\nswitch to another language:\n\n >>> obj.setDefaultLanguage('fr')\n >>> adapted.title\n u'de_title'\n\nSwitch the language to 'fr' via the adapter:\n\n >>> adapted.setLanguage('fr')\n >>> adapted.title\n u'fr_title'\n\nFinally, clean up:\n\n >>> placelesssetup.tearDown()\n\n\n``AvailableLanguagesVocabulary`` Vocabulary\n-------------------------------------------\n\nUse this vocabulary for get the available languages from the object\nitself.\n\n >>> from z3c.language.switch import vocabulary\n >>> vocab = vocabulary.AvailableLanguagesVocabulary(obj)\n >>> len(vocab._terms)\n 2\n\n >>> vocab._terms[0].value\n 'de'\n >>> vocab._terms[0].token\n 'de'\n >>> vocab._terms[0].title\n 'de'\n >>> vocab._terms[1].value\n 'fr'\n >>> vocab._terms[1].token\n 'fr'\n >>> vocab._terms[1].title\n 'fr'\n\n\n=======\nCHANGES\n=======\n\n1.1.0 (2009-11-29)\n------------------\n\n- adjust dependencies, reflect changes in zope packages\n\n1.0.2 (2008-05-21)\n------------------\n\n- Bug: Fix typo + exception handling\n\n1.0.1 (2008-01-24)\n------------------\n\n- Bug: Corrected meta-data.\n\n\n1.0.0 (2008-01-21)\n------------------\n\n- Restructure: Moved ``zope.language.switch`` to it's namespace package.", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://pypi.python.org/pypi/z3c.language.switch", "keywords": "zope3 z3c i18n language switch", "license": "ZPL 2.1", "maintainer": null, "maintainer_email": null, "name": "z3c.language.switch", "package_url": "https://pypi.org/project/z3c.language.switch/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/z3c.language.switch/", "project_urls": { "Download": "UNKNOWN", "Homepage": "http://pypi.python.org/pypi/z3c.language.switch" }, "release_url": "https://pypi.org/project/z3c.language.switch/1.1.0/", "requires_dist": null, "requires_python": null, "summary": "Zope3 i18n language switch.", "version": "1.1.0" }, "last_serial": 802039, "releases": { "1.0.0": [ { "comment_text": "", "digests": { "md5": "8cf83f47a642718a9b0e90bbb48100e5", "sha256": "2538be404a4701453febe46ea61ea8cc560d64b96d76e3db2e112c1d8f0231ec" }, "downloads": -1, "filename": "z3c.language.switch-1.0.0.tar.gz", "has_sig": false, "md5_digest": "8cf83f47a642718a9b0e90bbb48100e5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11040, "upload_time": "2008-01-21T09:00:59", "url": "https://files.pythonhosted.org/packages/f5/73/73f5a85c0051aa7e88206804092079623f95893a738db6c8891e70a7c8c4/z3c.language.switch-1.0.0.tar.gz" } ], "1.0.1": [ { "comment_text": "", "digests": { "md5": "f850494fe4a0c73ea7ab63063c38af98", "sha256": "98b78e94d2f3eba0c9e00692f48b0f1e927bbf8b91622e8217f1bfd9c128bb19" }, "downloads": -1, "filename": "z3c.language.switch-1.0.1.tar.gz", "has_sig": false, "md5_digest": "f850494fe4a0c73ea7ab63063c38af98", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11226, "upload_time": "2008-01-25T06:06:30", "url": "https://files.pythonhosted.org/packages/8f/f1/cf2087b0b88263afd4cb26e2d21e99fbcb046aef39641c553fcb59f6fd16/z3c.language.switch-1.0.1.tar.gz" } ], "1.1.0": [ { "comment_text": "", "digests": { "md5": "141d3e9bc36a5a6211e2c1709fda8a65", "sha256": "bccd1b34a3b8a643d44ed2675c258e8e45215e4770fcf3178f4f016f60e9074c" }, "downloads": -1, "filename": "z3c.language.switch-1.1.0.zip", "has_sig": false, "md5_digest": "141d3e9bc36a5a6211e2c1709fda8a65", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 26034, "upload_time": "2009-11-29T05:20:46", "url": "https://files.pythonhosted.org/packages/37/c3/da216293596f8b4e18267010347feae462f2c6db46b904c401b308468383/z3c.language.switch-1.1.0.zip" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "141d3e9bc36a5a6211e2c1709fda8a65", "sha256": "bccd1b34a3b8a643d44ed2675c258e8e45215e4770fcf3178f4f016f60e9074c" }, "downloads": -1, "filename": "z3c.language.switch-1.1.0.zip", "has_sig": false, "md5_digest": "141d3e9bc36a5a6211e2c1709fda8a65", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 26034, "upload_time": "2009-11-29T05:20:46", "url": "https://files.pythonhosted.org/packages/37/c3/da216293596f8b4e18267010347feae462f2c6db46b904c401b308468383/z3c.language.switch-1.1.0.zip" } ] }