Rename ISPmail models to use Virtual* prefix

- Domain -> VirtualDomain
- User -> VirtualUser
- Alias -> VirtualAlias

This clarifies which tables are ISPmail tables vs IMC tables.
This commit is contained in:
Christoph Haas 2026-03-26 23:34:05 +01:00
parent 93922e4cad
commit d5880d5096
8 changed files with 87 additions and 96 deletions

View file

@ -87,10 +87,10 @@ func (d *DB) UpsertAdminUser(username, passwordHash string) error {
// userID: the ID of the user.
// isAdmin: whether the user has admin privileges.
// Returns: a list of accessible domains.
func (d *DB) GetUserAccessibleDomains(userID uint, isAdmin bool) ([]Domain, error) {
func (d *DB) GetUserAccessibleDomains(userID uint, isAdmin bool) ([]VirtualDomain, error) {
// Admins get access to all domains.
if isAdmin {
var domains []Domain
var domains []VirtualDomain
if err := d.Order("name ASC").Find(&domains).Error; err != nil {
return nil, err
}
@ -100,7 +100,7 @@ func (d *DB) GetUserAccessibleDomains(userID uint, isAdmin bool) ([]Domain, erro
// Regular users query the imc_users2domains table.
// We use raw SQL with Joins because GORM's association methods
// don't handle our cross-database queries well.
var domains []Domain
var domains []VirtualDomain
err := d.Table("imc_users2domains"). // Query from this table
Select("virtual_domains.*"). // Select all columns from domains
Joins("JOIN virtual_domains ON virtual_domains.id = imc_users2domains.domain_id"). // Join to get domain details
@ -111,7 +111,7 @@ func (d *DB) GetUserAccessibleDomains(userID uint, isAdmin bool) ([]Domain, erro
return nil, err
}
if domains == nil {
domains = []Domain{} // Return empty slice, not nil
domains = []VirtualDomain{} // Return empty slice, not nil
}
return domains, nil
}