This commit is contained in:
Lennart J. Kurzweg (Nx2)
2026-04-23 23:09:24 +02:00
parent 47f12834c1
commit e496c29101
5 changed files with 73 additions and 56 deletions

View File

@@ -229,6 +229,7 @@ func (b *DBBackend) syncConfig(ctx context.Context, cfg *config.Config) error {
if a.User != "" {
tUsers = append(tUsers, a.User)
}
tUsers = append(tUsers, a.Users...)
if a.Group != "" {
tUsers = append(tUsers, groupMembers[a.Group]...)
}
@@ -299,6 +300,7 @@ func (b *DBBackend) syncConfig(ctx context.Context, cfg *config.Config) error {
if a.User != "" {
tUsers = append(tUsers, a.User)
}
tUsers = append(tUsers, a.Users...)
if a.Group != "" {
tUsers = append(tUsers, groupMembers[a.Group]...)
}
@@ -350,6 +352,7 @@ func (b *DBBackend) syncConfig(ctx context.Context, cfg *config.Config) error {
if a.User != "" {
tUsers = append(tUsers, a.User)
}
tUsers = append(tUsers, a.Users...)
if a.Group != "" {
tUsers = append(tUsers, groupMembers[a.Group]...)
}
@@ -1465,3 +1468,18 @@ func (b *DBBackend) DeleteAddressObject(ctx context.Context, p string) error {
func (b *DBBackend) QueryAddressObjects(ctx context.Context, p string, query *carddav.AddressBookQuery) ([]carddav.AddressObject, error) {
return b.ListAddressObjects(ctx, p, nil)
}
func (b *DBBackend) HasAddressBooks(ctx context.Context) (bool, error) {
username, err := b.getUsername(ctx)
if err != nil {
return false, err
}
var exists bool
err = b.pool.QueryRow(ctx, `
SELECT EXISTS (
SELECT 1 FROM addressbooks
WHERE owner_id = (SELECT id FROM users WHERE name = $1)
OR id IN (SELECT addressbook_id FROM addressbook_access WHERE user_id = (SELECT id FROM users WHERE name = $1))
)`, username).Scan(&exists)
return exists, err
}