diff options
author | David Rothstein <drothstein@gmail.com> | 2012-06-09 15:51:03 -0400 |
---|---|---|
committer | David Rothstein <drothstein@gmail.com> | 2012-06-09 15:51:03 -0400 |
commit | a12152309a64b5c3b9ea6a41e8da2baa9971f612 (patch) | |
tree | a6f27f9eced00ca14d8510be57e4d2e7588d968a /modules/locale | |
parent | 4a60f552b4e03916c76bbc7aaea5bc3fa503e85d (diff) | |
download | brdo-a12152309a64b5c3b9ea6a41e8da2baa9971f612.tar.gz brdo-a12152309a64b5c3b9ea6a41e8da2baa9971f612.tar.bz2 |
Issue #1495648 by plach: Introduce entity language support.
Diffstat (limited to 'modules/locale')
-rw-r--r-- | modules/locale/locale.module | 6 | ||||
-rw-r--r-- | modules/locale/locale.test | 5 |
2 files changed, 6 insertions, 5 deletions
diff --git a/modules/locale/locale.module b/modules/locale/locale.module index e0981b2fb..c3133bc0f 100644 --- a/modules/locale/locale.module +++ b/modules/locale/locale.module @@ -396,7 +396,7 @@ function locale_form_node_form_alter(&$form, &$form_state) { function locale_field_node_form_submit($form, &$form_state) { if (field_has_translation_handler('node', 'locale')) { $node = (object) $form_state['values']; - $available_languages = field_content_languages(); + $current_language = entity_language('node', $node); list(, , $bundle) = entity_extract_ids('node', $node); foreach (field_info_instances('node', $bundle) as $instance) { @@ -406,8 +406,8 @@ function locale_field_node_form_submit($form, &$form_state) { // Handle a possible language change: new language values are inserted, // previous ones are deleted. - if ($field['translatable'] && $previous_language != $node->language) { - $form_state['values'][$field_name][$node->language] = $node->{$field_name}[$previous_language]; + if ($field['translatable'] && $previous_language != $current_language) { + $form_state['values'][$field_name][$current_language] = $node->{$field_name}[$previous_language]; $form_state['values'][$field_name][$previous_language] = array(); } } diff --git a/modules/locale/locale.test b/modules/locale/locale.test index ffda6f580..0c6da13df 100644 --- a/modules/locale/locale.test +++ b/modules/locale/locale.test @@ -2788,8 +2788,9 @@ class LocaleCommentLanguageFunctionalTest extends DrupalWebTestCase { ->orderBy('cid', 'DESC') ->execute() ->fetchObject(); - $args = array('%node_language' => $node_langcode, '%comment_language' => $comment->language, '%langcode' => $langcode); - $this->assertEqual($comment->language, $langcode, t('The comment posted with content language %langcode and belonging to the node with language %node_language has language %comment_language', $args)); + $comment_langcode = entity_language('comment', $comment); + $args = array('%node_language' => $node_langcode, '%comment_language' => $comment_langcode, '%langcode' => $langcode); + $this->assertEqual($comment_langcode, $langcode, t('The comment posted with content language %langcode and belonging to the node with language %node_language has language %comment_language', $args)); } } } |