Преглед на файлове

ci_newbies: don't show people that previously joined a planet

same as eb84a95 but for the web version
raylu преди 1 месец
родител
ревизия
e5ff0cd60d
променени са 1 файла, в които са добавени 7 реда и са изтрити 7 реда
  1. 7 7
      ts/ci_newbies.ts

+ 7 - 7
ts/ci_newbies.ts

@@ -33,19 +33,19 @@ async function _render(): Promise<void> {
 	const planets = ['Katoa'];
 	const joined: Map<string, Join> = new Map();
 	for (const planet of planets) {
-		const messages: Message[] = await fetchJSON('https://api.fnar.net/chat/messages?' + new URLSearchParams({
-			'channel_names': planet + ' Global Site Owners',
-			'updated_since': sinceInput.valueAsDate?.toISOString(),
-		}).toString());
+		const messages: Message[] = await fetchJSON('https://api.fnar.net/chat/messages?' +
+				new URLSearchParams({'channel_names': planet + ' Global Site Owners'}).toString());
 		for (const message of messages)
 			if (message.Type == 'JOINED') {
-				const old_join = joined.get(message.SenderUserName)
-				if (old_join === undefined || old_join.timestamp > message.MessageTimestamp)
+				const oldJoin = joined.get(message.SenderUserName)
+				if (oldJoin === undefined || oldJoin.timestamp > message.MessageTimestamp)
 					joined.set(message.SenderUserName, {timestamp: message.MessageTimestamp, planet});
 			}
 	}
 
-	const sortedJoined = Array.from(joined.entries()).sort((a, b) => a[1].timestamp - b[1].timestamp);
+	const threshold = sinceInput.valueAsDate!.getTime();
+	const sortedJoined = Array.from(joined.entries().filter(([_, join]) => join.timestamp >= threshold))
+			.sort((a, b) => a[1].timestamp - b[1].timestamp);
 	const lines: string[] = [];
 	for (const [username, join] of sortedJoined) {
 		const dtStr = new Date(join.timestamp).toISOString().replace('T', ' ').replace('Z', '');