TranslationStatusFilter.php in Translation Views 8
File
src/Plugin/views/filter/TranslationStatusFilter.php
View source
<?php
namespace Drupal\translation_views\Plugin\views\filter;
use Drupal\views\Plugin\views\filter\BooleanOperator;
class TranslationStatusFilter extends BooleanOperator {
public function getValueOptions() {
$this->valueOptions = [
1 => $this
->t('Translated'),
0 => $this
->t('Not translated'),
];
}
public function query() {
$table_alias = $this
->ensureMyTable();
$status = $this->value;
if ($status == 0) {
$operation = '=';
}
else {
$operation = '>';
$status = 0;
}
$this->query
->addWhereExpression($this->options['group'], "FIND_IN_SET(:langcode, {$table_alias}.langs) {$operation} :status", [
':langcode' => '***TRANSLATION_VIEWS_TARGET_LANG***',
':status' => $status,
]);
}
}