public static function getStatus2($id) { $langs = Yii::$app->components['i18n']['languages']; $langlist = implode("','", $langs); $langLen = sizeof($langs); $messageTableName = Message::tableName(); $query = Message::findBySql("SELECT * FROM yii2_message WHERE language IN ('{$langlist}') AND id={$id} AND (TRIM(translation)<>'' AND translation IS NOT NULL)")->count('*'); return $query . "/" . $langLen; }
public function translated() { $langs = Yii::$app->components['i18n']['languages']; $langlist = implode("','", $langs); $langLen = sizeof($langs); $messageTableName = Message::tableName(); $query = Message::findBySql("\n SELECT yii2_source_message.*\n FROM yii2_source_message, yii2_message\n WHERE yii2_message.language IN ('{$langlist}') AND (TRIM(yii2_message.translation)='' OR yii2_message.translation IS NULL) AND yii2_source_message.id=yii2_message.id")->all(); $ids = []; foreach ($query as $row) { $ids[] = $row->id; } $this->andWhere("id NOT IN ('" . implode("','", $ids) . "')"); return $this; }