@@ 66-82 (lines=17) @@ | ||
63 | /** |
|
64 | * {@inheritdoc} |
|
65 | */ |
|
66 | public function getProperty($property, $root = null) |
|
67 | { |
|
68 | if ($this->cache === null) { |
|
69 | $translatableFields = $this->getClassMetadata()->getFieldNames(); |
|
70 | $translationFields = $this->getDocumentManager() |
|
71 | ->getClassMetadata($this->getClassMetadata()->getAssociationTargetClass($this->getTranslationAlias())) |
|
72 | ->getFieldNames(); |
|
73 | ||
74 | $this->cache = array_diff($translationFields, $translatableFields); |
|
75 | } |
|
76 | ||
77 | if (in_array($property, $this->cache, true)) { |
|
78 | $root = $this->getTranslationAlias(); |
|
79 | } |
|
80 | ||
81 | return parent::getProperty($property, $root); |
|
82 | } |
|
83 | ||
84 | /** |
|
85 | * @return string |
@@ 88-104 (lines=17) @@ | ||
85 | /** |
|
86 | * {@inheritdoc} |
|
87 | */ |
|
88 | public function getProperty($property, $root = null) |
|
89 | { |
|
90 | if ($this->cache === null) { |
|
91 | $translatableFields = $this->getClassMetadata()->getFieldNames(); |
|
92 | $translationFields = $this->getEntityManager() |
|
93 | ->getClassMetadata($this->getClassMetadata()->getAssociationMapping('translations')['targetEntity']) |
|
94 | ->getFieldNames(); |
|
95 | ||
96 | $this->cache = array_diff($translationFields, $translatableFields); |
|
97 | } |
|
98 | ||
99 | if (in_array($property, $this->cache, true)) { |
|
100 | $root = $this->getTranslationAlias($root); |
|
101 | } |
|
102 | ||
103 | return parent::getProperty($property, $root); |
|
104 | } |
|
105 | ||
106 | /** |
|
107 | * @param QueryBuilder|string|null $root |