Skip to content
Snippets Groups Projects

Applied patch

Files
5
@@ -60,10 +60,12 @@ class RawSQLArgument extends ArgumentPluginBase {
parent::buildOptionsForm($form, $form_state);
if ($this->account->hasPermission('edit views raw sql')) {
$form['where_raw_sql'] = [
'#type' => 'textfield',
'#type' => 'textarea',
'#title' => $this->t('Raw SQL'),
'#description' => $this->t('The argument value is accessed using the [argument] token.'),
'#default_value' => $this->options['where_raw_sql'],
'#weight' => -6,
'#required' => TRUE,
];
}
}
@@ -72,11 +74,12 @@ class RawSQLArgument extends ArgumentPluginBase {
* Create the query.
*/
public function query($group_by = FALSE) {
$this->ensureMyTable();
$raw_sql = $this->options['where_raw_sql'];
$token_service = \Drupal::token();
$raw_sql = $token_service->replace($this->options['where_raw_sql']);
$argument = $this->argument;
$raw_sql = str_replace('%argument%', $argument, $raw_sql);
$this->query->addWhereExpression($this->options['group'], $raw_sql);
$raw_sql = str_replace('[argument]', $argument, $raw_sql);
$this->query->addWhereExpression(0, $raw_sql);
}
}
Loading