synonyms_provider_field_provider_name($field), 'label' => $instance['label'], 'class' => $field_providers[$field['type']], ); } } return $providers; } /** * Implements hook_synonyms_provider_field_behavior_implementation_info(). */ function synonyms_provider_field_synonyms_provider_field_behavior_implementation_info($behavior) { switch ($behavior) { case 'autocomplete': case 'select': return array( 'number_integer' => 'TextSynonymsBehavior', 'number_decimal' => 'TextSynonymsBehavior', 'number_float' => 'TextSynonymsBehavior', 'text' => 'TextSynonymsBehavior', 'taxonomy_term_reference' => 'TaxonomySynonymsBehavior', 'entityreference' => 'EntityReferenceSynonymsBehavior', ); break; } return array(); } /** * Construct synonyms provider name out of underlying field. * * This function is inverse of synonyms_provider_field_field_name(). * * @param array $field * Field definition array whose provider name should be constructed * * @return string * Provider name that corresponds to the $field * * @see synonyms_provider_field_field_name() */ function synonyms_provider_field_provider_name($field) { return 'synonyms_provider_field_' . $field['field_name']; } /** * Reconstruct field name from the name of its provider. * * This function is inverse of synonyms_provider_field_provider_name(). * * @param string $provider * Name of the provider whose underlying field should be reconstructed * * @return string * Field name that corresponds to the $provider * * @see synonyms_provider_field_provider_name() */ function synonyms_provider_field_field_name($provider) { return drupal_substr($provider, drupal_strlen('synonyms_provider_field_')); }