Skip to main content

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

People

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


Download files

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

Files for archetypes.linguakeywordwidget, version 1.1
Filename, size File type Python version Upload date Hashes
Filename, size archetypes.linguakeywordwidget-1.1.zip (30.3 kB) File type Source Python version None Upload date Hashes View

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring DigiCert DigiCert EV certificate Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page