Skip to content

Commit 4a96867

Browse files
committed
Adjust usages of ipl\Stdlib\Filter::equal() and ::unequal()
1 parent 30f77db commit 4a96867

File tree

9 files changed

+22
-24
lines changed

9 files changed

+22
-24
lines changed

application/controllers/HistoryController.php

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,6 @@
1010
use Icinga\Module\Icingadb\Web\Controller;
1111
use Icinga\Module\Icingadb\Widget\ItemList\HistoryList;
1212
use Icinga\Module\Icingadb\Web\Control\ViewModeSwitcher;
13-
use ipl\Sql\Sql;
1413
use ipl\Stdlib\Filter;
1514
use ipl\Web\Control\LimitControl;
1615
use ipl\Web\Control\SortControl;
@@ -80,9 +79,11 @@ public function indexAction()
8079
$this->filter($history, $filter);
8180

8281
$history->getWith()['history.host']->setJoinType('LEFT');
83-
$history->getSelectBase()
82+
$history->filter(Filter::any(
8483
// Because of LEFT JOINs, make sure we'll fetch history entries only for items which still exist:
85-
->where(['history_host.id IS NOT NULL', 'history_service.id IS NOT NULL'], Sql::ANY);
84+
Filter::like('host.id', '*'),
85+
Filter::like('service.id', '*')
86+
));
8687

8788
yield $this->export($history);
8889

application/controllers/HostController.php

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -124,12 +124,10 @@ public function historyAction()
124124
'state'
125125
]);
126126

127-
$history
128-
->getSelectBase()
129-
->where([
130-
'history.host_id = ?' => $this->host->id,
131-
'history.service_id IS NULL'
132-
]);
127+
$history->filter(Filter::all(
128+
Filter::equal('history.host_id', $this->host->id),
129+
Filter::unlike('history.service_id', '*')
130+
));
133131

134132
$before = $this->params->shift('before', time());
135133
$url = Url::fromRequest()->setParams(clone $this->params);

application/controllers/NotificationsController.php

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -74,12 +74,11 @@ public function indexAction()
7474

7575
$notifications->filter(Filter::lessThanOrEqual('send_time', $before));
7676
$this->filter($notifications, $filter);
77-
$notifications->getSelectBase()
77+
$notifications->filter(Filter::any(
7878
// Make sure we'll fetch service history entries only for services which still exist
79-
->where([
80-
'notification_history.service_id IS NULL',
81-
'notification_history_service.id IS NOT NULL'
82-
], Sql::ANY);
79+
Filter::unlike('service_id', '*'),
80+
Filter::like('history.service.id', '*')
81+
));
8382

8483
yield $this->export($notifications);
8584

library/Icingadb/Common/Auth.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -187,7 +187,7 @@ public function applyRestrictions(Query $query)
187187
$this->forceQueryOptimization($serviceFilter, 'servicegroup.name');
188188
}
189189

190-
$roleFilter->add(Filter::any(Filter::unequal('service.id', '*'), $serviceFilter));
190+
$roleFilter->add(Filter::any(Filter::unlike('service.id', '*'), $serviceFilter));
191191
}
192192
}
193193

@@ -322,7 +322,7 @@ protected function parseBlacklist(string $blacklist, string $column): Filter\Non
322322
{
323323
$filter = Filter::none();
324324
foreach (explode(',', $blacklist) as $value) {
325-
$filter->add(Filter::equal($column, trim($value)));
325+
$filter->add(Filter::like($column, trim($value)));
326326
}
327327

328328
return $filter;

library/Icingadb/Compat/UrlMigrator.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -843,7 +843,7 @@ protected static function contactsColumns(): array
843843
$receivesStateNotifications = function ($state, $type = null) {
844844
return function ($filter) use ($state, $type) {
845845
/** @var Filter\Condition $filter */
846-
$negate = $filter instanceof Filter\Unequal;
846+
$negate = $filter instanceof Filter\Unequal || $filter instanceof Filter\Unlike;
847847
switch ($filter->getValue()) {
848848
case '0':
849849
$filter = Filter::any(

library/Icingadb/Model/Behavior/FlattenedObjectVars.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ public function rewriteCondition(Filter\Condition $condition, $relation = null)
1717

1818
$column = $condition->metaData()->get('columnName');
1919
if ($column !== null && $column !== 'flatname' && $column !== 'flatvalue') {
20-
$nameFilter = Filter::equal($relation . 'flatname', $column);
20+
$nameFilter = Filter::like($relation . 'flatname', $column);
2121
$class = get_class($condition);
2222
$valueFilter = new $class($relation . 'flatvalue', $condition->getValue());
2323

library/Icingadb/Web/Control/SearchBar/ObjectSuggestions.php

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -95,7 +95,7 @@ protected function createQuickSearchFilter($searchTerm)
9595

9696
$quickFilter = Filter::any();
9797
foreach ($model->getSearchColumns() as $column) {
98-
$where = Filter::equal($model->getTableName() . '.' . $column, $searchTerm);
98+
$where = Filter::like($model->getTableName() . '.' . $column, $searchTerm);
9999
$where->metaData()->set('columnLabel', $model->getMetaData()[$column]);
100100
$quickFilter->add($where);
101101
}
@@ -134,10 +134,10 @@ protected function fetchValueSuggestions($column, $searchTerm, Filter\Chain $sea
134134

135135
if (substr($targetPath, -5) === '.vars') {
136136
$columnPath = $targetPath . '.flatvalue';
137-
$query->filter(Filter::equal($targetPath . '.flatname', $columnName));
137+
$query->filter(Filter::like($targetPath . '.flatname', $columnName));
138138
}
139139

140-
$inputFilter = Filter::equal($columnPath, $searchTerm);
140+
$inputFilter = Filter::like($columnPath, $searchTerm);
141141
$query->columns($columnPath);
142142
$query->orderBy($columnPath);
143143

@@ -253,7 +253,7 @@ protected function queryCustomvarConfig(string $searchTerm): Select
253253

254254
$customVars->columns('flatname');
255255
$this->applyRestrictions($customVars);
256-
$customVars->filter(Filter::equal('flatname', $searchTerm));
256+
$customVars->filter(Filter::like('flatname', $searchTerm));
257257
$idColumn = $resolver->qualifyColumn('id', $resolver->getAlias($customVars->getModel()));
258258
$customVars = $customVars->assembleSelect();
259259

library/Icingadb/Web/Controller.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -282,7 +282,7 @@ public function handleSearchRequest(Query $query)
282282

283283
$filter = Filter::any();
284284
foreach ($query->getModel()->getSearchColumns() as $column) {
285-
$filter->add(Filter::equal($column, "*$q*"));
285+
$filter->add(Filter::like($column, "*$q*"));
286286
}
287287

288288
$requestUrl = Url::fromRequest();

library/Icingadb/Widget/Detail/ObjectDetail.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -518,7 +518,7 @@ protected function getUsersAndUsergroups(): array
518518
if ($this->objectType === 'host') {
519519
$objectFilter = Filter::all(
520520
Filter::equal('notification.host_id', $this->object->id),
521-
Filter::unequal('notification.service_id', '*')
521+
Filter::unlike('notification.service_id', '*')
522522
);
523523
$objectFilter->metaData()->set('forceOptimization', false);
524524
$groupBy = true;

0 commit comments

Comments
 (0)