Archetypes keyword widget with multilanguage support
Project description
Introduction
This addon is an archetypes multilingual keyword widget for Plone.
How to use
As any widget for Archetypes:
from Products.Archetypes.atapi from archetypes.linguakeywordwidget.widget import LinguaKeywordWidget atapi.Schema(( atapi.LinesField('subject', multiValued=1, accessor="Subject", widget=LinguaKeywordWidget()), ))
How it works
Keywords are stored in catalog but prefixes with language code before write and unprefixed before display. It means if you have widget / viewlet /view that access to data you must first remove language that way:
keywords = context.Subject() linguakeywords = [] language = context.Language() for keyword in value: if keyword.startswith('%s-' % language): linguakeywords.append(keyword[len(language) + 1:]) else: linguakeywords.append(keyword) return linguakeywords
redomino.keywordalias
keywordalias achieve same goal in a different way. With keyword alias your keywords are translated in backoffice. With linguakeywords you have just different keywords.
Credits
Companies
People
JeanMichel FRANCOIS aka toutpt <toutpt@gmail.com>
Changelog
1.1 (2013-01-16)
Add a workaround to make collectKeyword script support field added with schemaextender.
Rename the collectKeyword script to getLinguaKeywords to not conflict existings instance
Add tests
1.0 (2012-11-02)
Fix issue when no keyword exists and no one is added by the user
1.0a3 (2012-07-10)
Fix issue on collectKeywords
1.0a2 (2012-05-22)
remove span log in edit mode
1.0a1 (2012-05-22)
Initial release
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Hashes for archetypes.linguakeywordwidget-1.1.zip
Algorithm | Hash digest | |
---|---|---|
SHA256 | aee09b1c788ebfcd68fd3446c00fef2e595f0d3b62a7052be0944d72fab71efa |
|
MD5 | e6a1fc81ad066cacb4d9b7b1d8f4c3e7 |
|
BLAKE2b-256 | 22133db6fefb31b983d1a9897c1170eb2d541de81e1c7126caccd8ac3ddf8f6b |