summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/server/api/endpoints/admin/logs.ts22
1 files changed, 12 insertions, 10 deletions
diff --git a/src/server/api/endpoints/admin/logs.ts b/src/server/api/endpoints/admin/logs.ts
index 86e99730c5..060df09adf 100644
--- a/src/server/api/endpoints/admin/logs.ts
+++ b/src/server/api/endpoints/admin/logs.ts
@@ -53,16 +53,18 @@ export default define(meta, async (ps) => {
if (blackDomains.length > 0) {
query.andWhere(new Brackets(qb => {
for (const blackDomain of blackDomains) {
- const subDomains = blackDomain.split('.');
- let i = 0;
- for (const subDomain of subDomains) {
- const p = `blackSubDomain_${subDomain}_${i}`;
- // 全体で否定できないのでド・モルガンの法則で
- // !(P && Q) を !P || !Q で表す
- // SQL is 1 based, so we need '+ 1'
- qb.orWhere(`log.domain[${i + 1}] != :${p}`, { [p]: subDomain });
- i++;
- }
+ qb.andWhere(new Brackets(qb => {
+ const subDomains = blackDomain.split('.');
+ let i = 0;
+ for (const subDomain of subDomains) {
+ const p = `blackSubDomain_${subDomain}_${i}`;
+ // 全体で否定できないのでド・モルガンの法則で
+ // !(P && Q) を !P || !Q で表す
+ // SQL is 1 based, so we need '+ 1'
+ qb.orWhere(`log.domain[${i + 1}] != :${p}`, { [p]: subDomain });
+ i++;
+ }
+ }));
}
}));
}