From 76b26fa31918698e72ffc08afe9557ebc1533e9b Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Tue, 11 Nov 2025 03:47:35 +0000 Subject: [PATCH 1/2] Initial plan From 0e8620a650508323789e94008c8298c89c8ac807 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Tue, 11 Nov 2025 03:52:34 +0000 Subject: [PATCH 2/2] Fix boolean casting for email_verified field to support PostgreSQL Co-authored-by: ljonesfl <1099983+ljonesfl@users.noreply.github.com> --- src/Cms/Repositories/DatabaseUserRepository.php | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/src/Cms/Repositories/DatabaseUserRepository.php b/src/Cms/Repositories/DatabaseUserRepository.php index a4a5c24..2286c85 100644 --- a/src/Cms/Repositories/DatabaseUserRepository.php +++ b/src/Cms/Repositories/DatabaseUserRepository.php @@ -228,6 +228,15 @@ public function count(): int */ private function mapRowToUser( array $row ): User { + $emailVerifiedRaw = $row['email_verified'] ?? null; + $emailVerified = is_bool( $emailVerifiedRaw ) + ? $emailVerifiedRaw + : in_array( + strtolower( (string)$emailVerifiedRaw ), + [ '1', 'true', 't', 'yes', 'on' ], + true + ); + $data = [ 'id' => (int)$row['id'], 'username' => $row['username'], @@ -235,7 +244,7 @@ private function mapRowToUser( array $row ): User 'password_hash' => $row['password_hash'], 'role' => $row['role'], 'status' => $row['status'], - 'email_verified' => (bool)$row['email_verified'], + 'email_verified' => $emailVerified, 'two_factor_secret' => $row['two_factor_secret'], 'remember_token' => $row['remember_token'], 'failed_login_attempts' => (int)$row['failed_login_attempts'],