From 2d5158c680a5e1506c63b8d4ba559920db4a70db Mon Sep 17 00:00:00 2001
From: syuilo <syuilotan@yahoo.co.jp>
Date: Sun, 14 Apr 2019 16:06:04 +0900
Subject: [PATCH] Fix bug

---
 src/server/api/endpoints/admin/logs.ts | 11 ++++-------
 1 file changed, 4 insertions(+), 7 deletions(-)

diff --git a/src/server/api/endpoints/admin/logs.ts b/src/server/api/endpoints/admin/logs.ts
index cb5d3940c5..86e99730c5 100644
--- a/src/server/api/endpoints/admin/logs.ts
+++ b/src/server/api/endpoints/admin/logs.ts
@@ -57,13 +57,10 @@ export default define(meta, async (ps) => {
 					let i = 0;
 					for (const subDomain of subDomains) {
 						const p = `blackSubDomain_${subDomain}_${i}`;
-						if (i === subDomains.length - 1) {
-							// SQL is 1 based, so we need '+ 1'
-							qb.andWhere(`log.domain[${i + 1}] != :${p}`, { [p]: subDomain });
-						} else {
-							// SQL is 1 based, so we need '+ 1'
-							qb.andWhere(`log.domain[${i + 1}] = :${p}`, { [p]: subDomain });
-						}
+						// 全体で否定できないのでド・モルガンの法則で
+						// !(P && Q) を !P || !Q で表す
+						// SQL is 1 based, so we need '+ 1'
+						qb.orWhere(`log.domain[${i + 1}] != :${p}`, { [p]: subDomain });
 						i++;
 					}
 				}