I am seeing something odd, maybe someone can explain to me what's happening.
The default language of my site is DE, the admin language is EN. Maybe this is the source of my problem, but I am used to the English admin UI.
I have a CCK profile field labeled "AGB Akzeptieren". I figured that by declaring German as the default language, the default label should be in German.
When I search the translations for "AGB", I get hits that include this, as expected:
CCK AGB akzeptieren field:profile-field_agbaccepted:widget_label
This is correctly identified as German, and I can provide an English translation. So far so good.
Now, when I hit the registration page (/user/register) with the language set to English, the field label on this page is "AGB akzeptieren" - the German source string.
Question 1: Why does the page not use my translation?
After having hit the registration page, when I search the translations for "AGB" again, I now get a new result that apparently was created by Drupal:
Built-in interface AGB akzeptieren /user/register
Unfortunately, for some reason, Drupal thinks that this is English, and I cannot provide the English translation.
Question 2: Why does Drupal create this string in the translation table that is already known?
Question 3: Why does Drupal assume the language of this string English?
I suspected that Drupal somehow applies the current language incorrectly when generating new string entries for untranslated text. To verify this, I deleted the string incorrectly identified as English, set the site language to German, and hit the registration page again. The entry reappears.
As a result, I am unable to translate any of my CCK field labels. Every once in a while, the correct translation will work its way through the layers, but it is unclear to me what I did right when that happens. It must be a combination of deleting incorrect strings, refreshing translations, and hitting the page with a certain site language in the correct order. I have been playing with this all day and so far I have been able to translate 2 strings.
Comments
Cache
One of the things I did not do consistently was flushing the cache after deleting a translation or creating a new one. It appears that this caused the above behavior.