prepare('SELECT * FROM admin'); $result = $stmt->execute(); $settings = $result->fetchArray(SQLITE3_ASSOC); // get OIDC settings $stmt = $db->prepare('SELECT * FROM oauth_settings WHERE id = 1'); $result = $stmt->execute(); $oidcSettings = $result->fetchArray(SQLITE3_ASSOC); if ($oidcSettings === false) { // Table is empty or no row with id=1, set defaults $oidcSettings = [ 'name' => '', 'client_id' => '', 'client_secret' => '', 'authorization_url' => '', 'token_url' => '', 'user_info_url' => '', 'redirect_url' => '', 'logout_url' => '', 'user_identifier_field' => 'sub', 'scopes' => 'openid email profile', 'auth_style' => 'auto', 'auto_create_user' => 0, 'password_login_disabled' => 0 ]; } // get user accounts $stmt = $db->prepare('SELECT id, username, email FROM user ORDER BY id ASC'); $result = $stmt->execute(); $users = []; while ($row = $result->fetchArray(SQLITE3_ASSOC)) { $users[] = $row; } $userCount = is_array($users) ? count($users) : 0; $loginDisabledAllowed = $userCount == 1 && $settings['registrations_open'] == 0; ?>

/>

By enabling user registrations, the setting to disable login will be unavailable.

/>


/>

= 0) { ?>

onchange="toggleOidcEnabled()" />
/>
/>

/>
/>
/>

prepare($query); $result = $stmt->execute(); $logosOnDisk = []; $logosOnDB = []; while ($row = $result->fetchArray(SQLITE3_ASSOC)) { $logosOnDB[] = $row['logo']; } // Get all logos in the payment_methods table $query = 'SELECT icon FROM payment_methods'; $stmt = $db->prepare($query); $result = $stmt->execute(); while ($row = $result->fetchArray(SQLITE3_ASSOC)) { if (!strstr($row['icon'], "images/uploads/icons/")) { $logosOnDB[] = $row['icon']; } } $logosOnDB = array_unique($logosOnDB); // Get all logos in the uploads folder $uploadDir = 'images/uploads/logos/'; $uploadFiles = scandir($uploadDir); foreach ($uploadFiles as $file) { if ($file != '.' && $file != '..' && $file != 'avatars') { $logosOnDisk[] = ['logo' => $file]; } } // Find unused logos $unusedLogos = []; foreach ($logosOnDisk as $disk) { $found = false; foreach ($logosOnDB as $dbLogo) { if ($disk['logo'] == $dbLogo) { $found = true; break; } } if (!$found) { $unusedLogos[] = $disk; } } $logosToDelete = count($unusedLogos); ?>

.

:

:

onchange="toggleUpdateNotification()" />

/>