I found the error:
I failed to import registerType from LinguaPlone
Adding to that there is an error in LinguaPlone/README.txt
Instead of adding
try:
from Products.LinguaPlone.atapi import *
except ImportError:
# No multilingual support
from Products.Archetypes.public import *
it rather should be
try:
from Products.LinguaPlone.public import *
except ImportError:
# No multilingual support
from Products.Archetypes.atapi import *
Since LinguaPlone has no 'atapi' the above code fails silently and the
values of custom fields are not syncronised.
Regards,
Philip
Am 05.03.2009 um 18:38 schrieb Philip Bauer:
Am 05.03.2009 um 18:11 schrieb Wolfgang Thomas:
Philip Bauer wrote:
Hi all,
i have a problem with languageIndependent fields.
My ContentType "staffmember" has a
the value of languageIdependent fields is not changed after the
canonical field is changed.
I have a ContentType called StaffMember and for example an
StringField 'email'
atapi.StringField(
name='email',
required=False,
searchable=False,
languageIndependent=True,
validators = ('isEmail',),
storage=atapi.AnnotationStorage(),
widget=atapi.StringWidget(
label=_(u"Email"),
label_msgid='staffmember_label_email',
description=_(u""),
description_msgid='staffmember_help_email',
),
),
Since email doesn't change when translating (compared to jobTitle
or such) it's marked as langageIndependent.
When I translate that person, the 'email'-value of the canonical
version is kept - so far so good.
But when I change the value in the canoical version after
translating (imagine this persons email changed because he changed
his department) the original value is kept in the translated
version - with no chance for me to override or sync it again.
As far as i see this only happens to text- and stringfields, files
and images are not affected.
Am i missing something or is it a bug?
I use:
Plone 3.2.1
Zope (Zope 2.10.6-final, python 2.4.4, darwin)
Python 2.4.4
LinguaPlone 2.4
Archetypes 1.5.10-dev
ATVocabularyManager 1.5-alpha
Regards,
Philip
*************
Philip Bauer
Adlzreiterstr. 37
80337 München
Tel: 089 - 57 08 56 85
Mobil: 0176 - 23 55 05 05
[email protected]
www.starzel.de
Hi Philip,
we had a very similar problem. Could it be that the value _does_
get written to the translation when you edit the canonical, but
that you just don't see it, because the translation didn't get
reindexed?
Hello Wolfgang,
could that have been fixed in http://dev.plone.org/plone/changeset/22566
?
In other words, if you edit the canonical and change the email,
then edit the translation (to trigger the reindexing), do you then
see the updated value?
Good idea, but sadly not. LinguaPlone shows different values when I
use Boolean-, Line- and StringFields.
For this usecase we introduced a checkbox-Field
"reindexTranslations" to several of the content types we use. The
person editing a canonical object can tick this box to indicate
that reindexing should be done. An event-handler for
zope.lifecycleevent.interfaces.IObjectModifiedEvent then checks if
the property is set, and if so, it reindexes all translations and
unsets the property again.
Of course you could just reindex all translations of an object
automatically every time you save, but that will introduce some
extra waiting time for the editor...
That would still be better than more UI or differing values. But
reindexing the catalogue has no effect.
Or is your problem different, i.e. the value does not get
propagated to translations at all?
I guess that's the problem.
Philip
Cheers,
Wolfgang
_______________________________________________
Product-Developers mailing list
[email protected]
http://lists.plone.org/mailman/listinfo/product-developers
_______________________________________________
Product-Developers mailing list
[email protected]
http://lists.plone.org/mailman/listinfo/product-developers
_______________________________________________
Product-Developers mailing list
[email protected]
http://lists.plone.org/mailman/listinfo/product-developers