2
xmlns="http://namespaces.zope.org/zope">
4
<!-- Setup language negotiation -->
6
provides="zope.i18n.interfaces.INegotiator"
7
component="zope.i18n.negotiator.negotiator"
10
<adapter factory="zope.app.publisher.browser.ModifiableBrowserLanguages"
11
for="zope.publisher.interfaces.http.IHTTPRequest"
12
provides="zope.i18n.interfaces.IModifiableUserPreferredLanguages"
15
<class class="zope.publisher.http.HTTPRequest">
16
<implements interface="zope.annotation.IAttributeAnnotatable" />
19
<!-- Setup charset negotiation -->
20
<adapter factory="zope.publisher.http.HTTPCharsets"
21
for="zope.publisher.interfaces.http.IHTTPRequest"
22
provides="zope.i18n.interfaces.IUserPreferredCharsets"
25
<!-- Register the Translation Domain as a content object -->
26
<localUtility class="zope.app.i18n.translationdomain.TranslationDomain">
28
id="zope.app.i18n.TranslationDomain"
30
<allow interface="zope.i18n.interfaces.ITranslationDomain"
32
<require permission="zope.ManageSite"
33
interface="zope.app.container.interfaces.IContainer"
35
<require permission="zope.ManageSite"
36
interface="zope.app.i18n.interfaces.IWriteTranslationDomain"
38
<require permission="zope.ManageSite"
39
interface="zope.app.i18n.interfaces.ISyncTranslationDomain"
44
for="zope.app.i18n.interfaces.ILocalTranslationDomain
45
zope.component.interfaces.IRegistered"
46
handler="zope.app.i18n.translationdomain.setDomainOnActivation"
50
for="zope.app.i18n.interfaces.ILocalTranslationDomain
51
zope.component.interfaces.IUnregistered"
52
handler="zope.app.i18n.translationdomain.unsetDomainOnDeactivation"
55
<!-- Setup Message Catalogs -->
56
<class class="zope.app.i18n.messagecatalog.MessageCatalog">
57
<factory id="zope.app.MessageCatalog" />
59
interface="zope.annotation.interfaces.IAttributeAnnotatable" />
61
<require permission="zope.View"
62
interface="zope.i18n.interfaces.IMessageCatalog" />
63
<require permission="zope.ManageSite"
64
attributes="setMessage getMessageIds" />
68
<!-- Setup Export and Import Filters -->
70
factory="zope.app.i18n.filters.GettextExportFilter"
71
for="zope.app.i18n.interfaces.ILocalTranslationDomain"
72
provides="zope.i18n.interfaces.IMessageExportFilter"
76
factory="zope.app.i18n.filters.GettextImportFilter"
77
for="zope.app.i18n.interfaces.ILocalTranslationDomain"
78
provides="zope.i18n.interfaces.IMessageImportFilter"
81
<include package="zope.i18n.locales" />
82
<include package="zope.app.i18n.xmlrpc" />