diff options
author | James E. Blair <jeblair@redhat.com> | 2019-03-14 09:06:01 -0700 |
---|---|---|
committer | James E. Blair <corvus@inaugust.com> | 2019-03-14 17:16:15 +0000 |
commit | a88aad34236d64eebdc286f5a6072f84ced7809b (patch) | |
tree | 894e28271f2d7aeb761901b6495a357cab1466f2 | |
parent | 88b16685a3177eecba3eb46c880b2aabac22d23e (diff) | |
download | zuul-a88aad34236d64eebdc286f5a6072f84ced7809b.tar.gz |
web: support more than one job in the filter
This allows you to enter:
requirements-tox-py35-check-uc cross-cinder-py35
In the job filter and see the common ancestry in the tree view.
The status page filter is also updated to support multiple spaces
between items. Both filters now support this in order to deal
with common copy/paste errors.
Depends-On: https://review.openstack.org/643397
Change-Id: I38cc6cdc8b5373dc8f29804f5bb35e9594a000bf
-rw-r--r-- | web/src/containers/jobs/Jobs.jsx | 12 | ||||
-rw-r--r-- | web/src/containers/status/Pipeline.jsx | 2 |
2 files changed, 9 insertions, 5 deletions
diff --git a/web/src/containers/jobs/Jobs.jsx b/web/src/containers/jobs/Jobs.jsx index fd7cd8d41..7f28433c7 100644 --- a/web/src/containers/jobs/Jobs.jsx +++ b/web/src/containers/jobs/Jobs.jsx @@ -102,11 +102,15 @@ class JobsList extends React.Component { let filtered = false if (filter) { filtered = true + let filters = filter.replace(/ +/, ',').split(',') for (let job of jobs) { - if (job.name.indexOf(filter) !== -1 || - (job.description && job.description.indexOf(filter) !== -1)) { - getNode(job, !filtered) - } + filters.forEach(jobFilter => { + if (jobFilter && ( + (job.name.indexOf(jobFilter) !== -1) || + (job.description && job.description.indexOf(jobFilter) !== -1))) { + getNode(job, !filtered) + } + }) } } // process job list diff --git a/web/src/containers/status/Pipeline.jsx b/web/src/containers/status/Pipeline.jsx index 7b585eeb0..b6ce6487a 100644 --- a/web/src/containers/status/Pipeline.jsx +++ b/web/src/containers/status/Pipeline.jsx @@ -90,7 +90,7 @@ class Pipeline extends React.Component { filterQueue(queue, filter) { let found = false - let filters = filter.replace(' ', ',').split(',') + let filters = filter.replace(/ +/, ',').split(',') queue.heads.forEach(changes => { changes.forEach(change => { filters.forEach(changeFilter => { |