From 24097b9e457baa525195610b4e7cabc595d935e4 Mon Sep 17 00:00:00 2001 From: oscarotero Date: Fri, 1 Jul 2016 13:24:58 +0200 Subject: [PATCH] Added language support to Row::__isset() --- src/Row.php | 6 ++++++ tests/LocaleTest.php | 4 ++++ 2 files changed, 10 insertions(+) diff --git a/src/Row.php b/src/Row.php index c8a7cf7..f9a61a0 100644 --- a/src/Row.php +++ b/src/Row.php @@ -164,6 +164,12 @@ public function __set($name, $value) */ public function __isset($name) { + $language = $this->getDatabase()->getAttribute(SimpleCrud::ATTR_LOCALE); + + if (!is_null($language) && isset($this->values["{$name}_{$language}"])) { + return true; + } + return isset($this->values[$name]) || isset($this->relations[$name]); } diff --git a/tests/LocaleTest.php b/tests/LocaleTest.php index 62bccdb..b7e0f3d 100644 --- a/tests/LocaleTest.php +++ b/tests/LocaleTest.php @@ -41,5 +41,9 @@ public function testRow() $post->title_es = 'EspaƱol'; $this->assertNotSame($post->title_gl, $post->title_es); + + $this->assertTrue(isset($post->title_es)); + $this->assertTrue(isset($post->title)); + $this->assertFalse(isset($post->title_en)); } }