summaryrefslogtreecommitdiff
path: root/modules/field/modules/options/options.module
diff options
context:
space:
mode:
Diffstat (limited to 'modules/field/modules/options/options.module')
-rw-r--r--modules/field/modules/options/options.module9
1 files changed, 6 insertions, 3 deletions
diff --git a/modules/field/modules/options/options.module b/modules/field/modules/options/options.module
index 04b88d8f4..e97f19164 100644
--- a/modules/field/modules/options/options.module
+++ b/modules/field/modules/options/options.module
@@ -79,8 +79,11 @@ function options_field_widget_form(&$form, &$form_state, $field, $instance, $lan
$has_value = isset($items[0][$value_key]);
$properties = _options_properties($type, $multiple, $required, $has_value);
+ $entity_type = $element['#entity_type'];
+ $entity = $element['#entity'];
+
// Prepare the list of options.
- $options = _options_get_options($field, $instance, $properties);
+ $options = _options_get_options($field, $instance, $properties, $entity_type, $entity);
// Put current field values in shape.
$default_value = _options_storage_to_form($items, $options, $value_key, $properties);
@@ -237,9 +240,9 @@ function _options_properties($type, $multiple, $required, $has_value) {
/**
* Collects the options for a field.
*/
-function _options_get_options($field, $instance, $properties) {
+function _options_get_options($field, $instance, $properties, $entity_type, $entity) {
// Get the list of options.
- $options = (array) module_invoke($field['module'], 'options_list', $field, $instance);
+ $options = (array) module_invoke($field['module'], 'options_list', $field, $instance, $entity_type, $entity);
// Sanitize the options.
_options_prepare_options($options, $properties);