{
"info": {
"author": "Jens W. Klein",
"author_email": "jk@kleinundpartner.at",
"bugtrack_url": null,
"classifiers": [
"Environment :: Web Environment",
"Framework :: Plone",
"Framework :: Plone :: 5.1",
"License :: OSI Approved :: GNU General Public License v2 (GPLv2)",
"Operating System :: OS Independent",
"Programming Language :: Python",
"Programming Language :: Python :: 2.7"
],
"description": ".. This README is meant for consumption by humans and pypi. Pypi can render rst files so please do not use Sphinx features.\n If you want to learn more about writing documentation, please check out: http://docs.plone.org/about/documentation_styleguide.html\n This text does not appear on pypi or github. It is a comment.\n\n=================\ncollective.ttwpo\n=================\n\nTranslations for Plone UI through-the-web (TTW) with option to connect to translation web-services.\n\nFeatures\n========\n\n- Create an i18n-domain and languages variants TTW (also delete them).\n- Add GNU Gettext (``*.po``) files TTW to a language.\n- Manage different versions of a GNU Gettext file and set one as current.\n- Fetch GNU Gettext files from configured translations services. So far only `Zanata `_ is supported.\n\nCurrent Limitations\n===================\n\n- it is not yet possible to override global, file-system configured (zcml) i18n-domains (see todo).\n\n\nInstallation\n============\n\nInstall collective.ttwpo by adding it to your buildout::\n\n [buildout]\n\n ...\n\n eggs =\n collective.ttwpo\n\n\nand then running ``bin/buildout``.\n\nExample using the ``Zanata`` webservice connector::\n\n eggs =\n collective.ttwpo[zanata]\n\nAfter installation activate it in the addons control-panel.\nVisit the new ``TTW PO Support`` control-panel.\n\nConfiguring a webservice\n========================\n\nFor each i18n-domain provide a JSON configuration like so:\n\n::\n\n {\n \"servicename\":\"zanata\",\n \"url\":\"https://zanata.mydomain.com/rest/\",\n \"user\":\"johndoe\",\n \"token\":\"abcdef1234567890abcdef1234567890\",\n \"project\": \"mydemo.project\",\n \"version\": \"1.x\",\n \"document\": \"zanata-document-name\"\n }\n\nThe key ``servicename`` is mandatory and used to look a up a named adapter.\nAll other settings are adapter specific and are passed as-is to the adapter.\n\n\nTodo/ Nice-to-Have\n==================\n\n- Allow single users or groups to manage a language: create/delete/make current/sync.\n\n- Download uploaded PO files.\n\n- If an i18n-domain was already registered global, use their catalogs.\n Order: First local catalog, then global catalogs.\n\n- Make upload capability configurable.\n\n- Add Transifex connector.\n\n- Allow environment variables in webservice configuration, which then are replaced.\n\n- If a webservice was configured, sync all languages at once.\n Create missing languages.\n\n- GenericSetup import/ export of the whole configuration.\n\n\nContributions and Source Code\n=============================\n\n.. image:: https://travis-ci.org/collective/collective.ttwpo.svg?branch=master\n :target: https://travis-ci.org/collective/collective.ttwpo\n\n.. image:: https://coveralls.io/repos/github/collective/collective.ttwpo/badge.svg?branch=master\n :target: https://coveralls.io/github/collective/collective.ttwpo?branch=master\n\nIf you want to help with the development (improvement, update, bug-fixing, ...) of ``collective.ttwpo`` this is a great idea!\n\nThe code is located in the `GitHub Collective `_.\n\nYou can clone it or `get access to the GitHub Collective `_ and work directly on the project.\nPlease always use pull-requests.\n\nMaintainers are Jens Klein and the `BlueDynamics Alliance `_ developer team.\n\nWe appreciate any contribution and if a release is needed to be done on pypi, please just contact one of us:\n`dev@bluedynamics dot com `_\n\nIf you are having issues, please let me know:\n\n- File an issue at the `TTWPO Issue Tracker `_.\n\n- or just write me an email to jens@bluedynamics.com.\n\nThis code was initially written for and paid by `Porsche Informatik Gesellschaft m.b.H. `_, Salzburg.\n\nThe project is licensed under the GPLv2.\n\nChangelog\n=========\n\n\n1.0b5 (2017-11-15)\n------------------\n\n- Initial release.\n [jensens]\n\nLicense\n=======\n\ncollective.ttwpo Copyright 2017, BlueDynamics Alliance, Austria, Germany, Switzerland\n\nThis program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License version 2 as published by the Free Software Foundation.\n\nThis program is distributed in the hope that it will be useful,\nbut WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\nSee the GNU General Public License for more details.\n\nYou should have received a copy of the GNU General Public License along with this program;\nif not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.\n\n\n",
"description_content_type": null,
"docs_url": null,
"download_url": "",
"downloads": {
"last_day": -1,
"last_month": -1,
"last_week": -1
},
"home_page": "https://pypi.python.org/pypi/collective.ttwpo",
"keywords": "Python Plone Translation PO gettext ttwpo",
"license": "GNU General Public License v2 (GPLv2)",
"maintainer": "",
"maintainer_email": "",
"name": "collective.ttwpo",
"package_url": "https://pypi.org/project/collective.ttwpo/",
"platform": "",
"project_url": "https://pypi.org/project/collective.ttwpo/",
"project_urls": {
"Homepage": "https://pypi.python.org/pypi/collective.ttwpo"
},
"release_url": "https://pypi.org/project/collective.ttwpo/1.0b5/",
"requires_dist": [
"plone.api",
"products.cmfplone",
"python-gettext",
"setuptools",
"pdbpp; extra == 'dev'",
"plone.app.testing; extra == 'test'",
"plone.app.robotframework[debug]; extra == 'test'",
"plone.app.contenttypes[test]; extra == 'test'",
"pyzanata; extra == 'zanata'"
],
"requires_python": "",
"summary": "Manage your PO Translation Files TTW and Sync with Translationservices",
"version": "1.0b5"
},
"last_serial": 4923071,
"releases": {
"1.0b2": [
{
"comment_text": "",
"digests": {
"md5": "3e7a1928f5bb115f625cdbf2cf0bbd11",
"sha256": "f1833588d76e692f1265a86b242137b244ed9fab48350d145ef10d5b7a6a375f"
},
"downloads": -1,
"filename": "collective.ttwpo-1.0b2-py2-none-any.whl",
"has_sig": false,
"md5_digest": "3e7a1928f5bb115f625cdbf2cf0bbd11",
"packagetype": "bdist_wheel",
"python_version": "py2",
"requires_python": null,
"size": 29343,
"upload_time": "2017-11-15T15:56:48",
"url": "https://files.pythonhosted.org/packages/44/14/23c899269cbb8300bd57d9009570be02cbbad2ae0d0a4394479f56d0b43b/collective.ttwpo-1.0b2-py2-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "8ac505491171b9ea36027c3ade9ee9d6",
"sha256": "3a4708e3cd2e6c5a6d24e28571de4a0b9b28fc20e56ff96d53353aa01fccd64b"
},
"downloads": -1,
"filename": "collective.ttwpo-1.0b2.zip",
"has_sig": false,
"md5_digest": "8ac505491171b9ea36027c3ade9ee9d6",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 34175,
"upload_time": "2017-11-15T15:56:50",
"url": "https://files.pythonhosted.org/packages/59/e4/61089e8b4a4086f1c35c67eb9de735d72c75fa413166bbc32722501f780b/collective.ttwpo-1.0b2.zip"
}
],
"1.0b3": [
{
"comment_text": "",
"digests": {
"md5": "b975356ba7f7681dbb32de9d2d49351d",
"sha256": "e69fd975b605bc20068f10c4d7cd68b0c25d2ba5eebe8c8edc44741fabd59872"
},
"downloads": -1,
"filename": "collective.ttwpo-1.0b3-py2-none-any.whl",
"has_sig": false,
"md5_digest": "b975356ba7f7681dbb32de9d2d49351d",
"packagetype": "bdist_wheel",
"python_version": "py2",
"requires_python": null,
"size": 29339,
"upload_time": "2017-11-15T16:00:28",
"url": "https://files.pythonhosted.org/packages/bd/af/22e689bfcce0a92cee79359ffb9e2a2f4f8afbea34d7116ac42272a8ce40/collective.ttwpo-1.0b3-py2-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "28fffc408eb14c510b21451544c2c5e6",
"sha256": "9b8228cf87aa89b53ad00515b052ec6ea98177f4487520f57ff288391dce5cf0"
},
"downloads": -1,
"filename": "collective.ttwpo-1.0b3.zip",
"has_sig": false,
"md5_digest": "28fffc408eb14c510b21451544c2c5e6",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 34171,
"upload_time": "2017-11-15T16:00:32",
"url": "https://files.pythonhosted.org/packages/9f/d9/da535a70325063470f6c895a6b3d1c99a9d87653a1b7b9340d0e9631355e/collective.ttwpo-1.0b3.zip"
}
],
"1.0b4": [
{
"comment_text": "",
"digests": {
"md5": "c6ad68176491bcee55a92a9b377d4081",
"sha256": "9b1d0e7efede0a8ca88372f185ea425625a1445dab99b869b1d19a436f1f0256"
},
"downloads": -1,
"filename": "collective.ttwpo-1.0b4-py2-none-any.whl",
"has_sig": false,
"md5_digest": "c6ad68176491bcee55a92a9b377d4081",
"packagetype": "bdist_wheel",
"python_version": "py2",
"requires_python": null,
"size": 33545,
"upload_time": "2017-11-15T16:18:40",
"url": "https://files.pythonhosted.org/packages/45/49/7a98104bf6fc92d185fa317ec005556e7efec3080a8943209941a920607e/collective.ttwpo-1.0b4-py2-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "80a78479dcde14c64fb9193c09dd2540",
"sha256": "1b4aec1525d0dfc0d0ef1ffbe3a25c07e9de8e5916daec10a3ef881ce3bc14a3"
},
"downloads": -1,
"filename": "collective.ttwpo-1.0b4.zip",
"has_sig": false,
"md5_digest": "80a78479dcde14c64fb9193c09dd2540",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 38538,
"upload_time": "2017-11-15T16:18:41",
"url": "https://files.pythonhosted.org/packages/fa/e4/18889cacffadbb7235d1589a4ee2d9dac0c611e84078a15a487796637b5a/collective.ttwpo-1.0b4.zip"
}
],
"1.0b5": [
{
"comment_text": "",
"digests": {
"md5": "8fcf6e7290de40f72469dc8a1e3bcab4",
"sha256": "434b5cecb9db5b816c90e39e16eaff4cc0c170053741837844731562b1ef9eca"
},
"downloads": -1,
"filename": "collective.ttwpo-1.0b5-py2-none-any.whl",
"has_sig": false,
"md5_digest": "8fcf6e7290de40f72469dc8a1e3bcab4",
"packagetype": "bdist_wheel",
"python_version": "py2",
"requires_python": null,
"size": 33580,
"upload_time": "2017-11-15T16:39:43",
"url": "https://files.pythonhosted.org/packages/25/a4/aef365b28fa299e8953e576329017f6532aebe7ca4b08010d8846f2056c8/collective.ttwpo-1.0b5-py2-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "a09757bf88992f63ed9a5a270e09c298",
"sha256": "8a42d780357b859de2aafda3968211ea3197e312d5a5d98f2be2ed63d9d16f9e"
},
"downloads": -1,
"filename": "collective.ttwpo-1.0b5.zip",
"has_sig": false,
"md5_digest": "a09757bf88992f63ed9a5a270e09c298",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 38584,
"upload_time": "2017-11-15T16:39:44",
"url": "https://files.pythonhosted.org/packages/05/80/570250ef39805502ae45f21af3a88ce90a3fee6324e4cf7e7f2572a6bebb/collective.ttwpo-1.0b5.zip"
}
]
},
"urls": [
{
"comment_text": "",
"digests": {
"md5": "8fcf6e7290de40f72469dc8a1e3bcab4",
"sha256": "434b5cecb9db5b816c90e39e16eaff4cc0c170053741837844731562b1ef9eca"
},
"downloads": -1,
"filename": "collective.ttwpo-1.0b5-py2-none-any.whl",
"has_sig": false,
"md5_digest": "8fcf6e7290de40f72469dc8a1e3bcab4",
"packagetype": "bdist_wheel",
"python_version": "py2",
"requires_python": null,
"size": 33580,
"upload_time": "2017-11-15T16:39:43",
"url": "https://files.pythonhosted.org/packages/25/a4/aef365b28fa299e8953e576329017f6532aebe7ca4b08010d8846f2056c8/collective.ttwpo-1.0b5-py2-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "a09757bf88992f63ed9a5a270e09c298",
"sha256": "8a42d780357b859de2aafda3968211ea3197e312d5a5d98f2be2ed63d9d16f9e"
},
"downloads": -1,
"filename": "collective.ttwpo-1.0b5.zip",
"has_sig": false,
"md5_digest": "a09757bf88992f63ed9a5a270e09c298",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 38584,
"upload_time": "2017-11-15T16:39:44",
"url": "https://files.pythonhosted.org/packages/05/80/570250ef39805502ae45f21af3a88ce90a3fee6324e4cf7e7f2572a6bebb/collective.ttwpo-1.0b5.zip"
}
]
}