Browse Source

Merge branch 'translate-patch'

mark_story 12 years ago
parent
commit
312b2c3cd1

+ 1 - 1
lib/Cake/Model/Behavior/TranslateBehavior.php

@@ -305,7 +305,7 @@ class TranslateBehavior extends ModelBehavior {
 					}
 				} else {
 					$value = '';
-					if (!empty($row[$Model->alias][$aliasVirtual])) {
+					if (is_numeric($row[$Model->alias][$aliasVirtual]) || !empty($row[$Model->alias][$aliasVirtual])) {
 						$value = $row[$Model->alias][$aliasVirtual];
 					}
 					$row[$Model->alias][$aliasField] = $value;

+ 25 - 0
lib/Cake/Test/Case/Model/Behavior/TranslateBehaviorTest.php

@@ -355,6 +355,31 @@ class TranslateBehaviorTest extends CakeTestCase {
 	}
 
 /**
+ * Test loading fields with 0 as the translated value.
+ */
+	public function testFetchTranslationsWithZero() {
+		$this->loadFixtures('Translate', 'TranslatedItem');
+
+		$model = new TranslatedItem();
+		$translateModel = $model->translateModel();
+		$translateModel->updateAll(array('content' => '"0"'));
+		$model->locale = 'eng';
+
+		$result = $model->read(null, 1);
+		$expected = array(
+			'TranslatedItem' => array(
+				'id' => 1,
+				'slug' => 'first_translated',
+				'locale' => 'eng',
+				'title' => '0',
+				'content' => '0',
+				'translated_article_id' => 1,
+			)
+		);
+		$this->assertEquals($expected, $result);
+	}
+
+/**
  * testLocaleMultiple method
  *
  * @return void