As soon as the title is replaced, and I'm taken back to the "Manage fields" screen, I get the following:

  • Notice: Undefined index: module in _field_info_prepare_instance_widget() (line 382 of /path/to/drupal/modules/field/field.info.inc).
  • Notice: Undefined index: module in _field_info_prepare_instance_display() (line 350 of /path/to/drupal/modules/field/field.info.inc).
  • Notice: Undefined index: module in _field_info_prepare_instance_display() (line 350 of /path/to/drupal/modules/field/field.info.inc).

It doesn't seem to affect anything. As in, the node titles still show up translated in the desired language.

Versions installed:
Drupal core: 7.9
Entity API: 7.x-1.0-beta11
Internationalization: 7.x-1.1
Title: 7.x-1.x-dev (2011-Oct-27)

Even after a cache-clear, I can reproduce this at will by deleting and re-replacing.

Comments

plach’s picture

Status: Active » Postponed (maintainer needs more info)

Please check with the latest dev of Core, Title and ET (Entity not required anymore).

balagan’s picture

Issue summary: View changes

I got the same message, but the error now is on line 591 of field.info.class.inc.
I was trying to run some custom code to manipulate translations of taxonomy terms.
I am still basically doing nothing, I have uncommented all my code, and arrived to this line which causes the error:
$vocabulary = taxonomy_vocabulary_machine_name_load('fungi');
After this error, I cannot display translated terms, page crashes, error.log says:
PHP Fatal error: Class name must be a valid object or a string in sites\\all\\modules\\entity_translation\\includes\\translation.handler_factory.inc on line 93, referer:
My module ran the code on all pages, so also on the Translate tab.

I am not sure where to open the bug report, in Title or Entity translation module.

balagan’s picture

Status: Postponed (maintainer needs more info) » Active
plach’s picture

Status: Active » Postponed (maintainer needs more info)

It seems you either have wrong ET integration code specifying an non-existing class or your class registry has not been updated correctly for some reason. It's hard to tell without being able to reproduce this.

Try to execute:

drush rr
drush cc all
balagan’s picture

I can reproduce the problem. Actually this is the 3rd test site I am messing up, this one is from a clean install. I have run rush rr and drush cc all.
In my module that runs on every page, I was able to run $tree = taxonomy_get_tree($vocab_id); with no problem, even on taxonomy term pages, but these terms did not contain translations, so I have changed it to $tree = taxonomy_get_tree($vocab_id,0,NULL,TRUE); which gave me this again: Notice: Undefined index: module in FieldInfo->prepareInstanceWidget() (line 591 of ...\modules\field\field.info.class.inc).

I think I have found something that might help to figure out what is happening. When I run

$tree = taxonomy_get_tree(2,0,NULL,TRUE);
dpm($tree, "treeee");

from Devel's "Execute PHP", it runs properly, terms have all fields. When I run the same code from my module, then first time the code runs without a notice, the name_field is there with the translations, but the "translations" object, the entity_translation_handler_id, and the name_original strings are missing. Maybe the code in my module runs before either some Title or ET code runs?

plach’s picture

Could be. Entity load or entity cache might be related.

klonos’s picture

This one could be a duplicate of (or related to) #1001060: Undefined index _field_info_prepare_instance_widget