diff -r c62b53e70d9d -r a44a73ee12f9 src/pyams_i18n/interfaces/__init__.py --- a/src/pyams_i18n/interfaces/__init__.py Wed Mar 11 11:58:56 2015 +0100 +++ b/src/pyams_i18n/interfaces/__init__.py Fri Mar 20 17:28:43 2015 +0100 @@ -19,7 +19,7 @@ from zope.interface import Interface, invariant, Invalid # import packages -from zope.schema import Choice, Set, Bool +from zope.schema import Choice, Set, Bool, List from pyams_i18n import _ @@ -55,8 +55,8 @@ "user select languages which are offered in " "a skin."""), value_type=Choice(vocabulary='PyAMS base languages'), - default={'en', }, - required=False) + default={'en'}, + required=True) cache_enabled = Bool(title=_("Language caching enabled"), description=_("Language caching enabled (per request)"), @@ -77,6 +77,18 @@ """Clear cached language value""" +class II18nManager(Interface): + """Context languages manager + + This interface is used to handle contents providing several languages + """ + + languages = List(title=_("Content languages"), + description=_("List of languages available for this content"), + required=True, + value_type=Choice(vocabulary='PyAMS offered languages')) + + class IUserPreferredLanguage(Interface): """This interface provides language negotiation based on user preferences"""