public function joinQuery($languageCode = null) { $joinQuery = false; if ($languageCode == null) { $languageCode = $this->getDefaultLanguageCode(); } if ($this->config->isMultilingual()) { // join language table $languageTable = $this->config->languageTableName(); $idField = $this->config->tableName() . '.`' . $this->config->idField() . '`'; $languageReferenceField = $languageTable . '.`' . $this->config->languageForeignKeyField() . '`'; $languageCodeField = $languageTable . '.`' . $this->config->languageCodeField() . '`'; $joinQuery .= " LEFT OUTER JOIN {$languageTable} ON {$idField} = {$languageReferenceField} AND {$languageCodeField} = " . ipDb()->getConnection()->quote($languageCode) . ""; } if ($this->config->joinQuery()) { if ($joinQuery != '') { $joinQuery .= ' '; } $joinQuery .= $this->config->joinQuery(); } return $joinQuery; }