summaryrefslogtreecommitdiff
path: root/modules/locale
diff options
context:
space:
mode:
authorDavid Rothstein <drothstein@gmail.com>2012-06-09 15:51:03 -0400
committerDavid Rothstein <drothstein@gmail.com>2012-06-09 15:51:03 -0400
commita12152309a64b5c3b9ea6a41e8da2baa9971f612 (patch)
treea6f27f9eced00ca14d8510be57e4d2e7588d968a /modules/locale
parent4a60f552b4e03916c76bbc7aaea5bc3fa503e85d (diff)
downloadbrdo-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.module6
-rw-r--r--modules/locale/locale.test5
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));
}
}
}