Repository: owncloud/ocis
Pull request #5828 (2023-03-14 16:26:51)

graph: Allow to disable the default role assignment on user creation
Introduces a switch ('GRAPH_ASSIGN_DEFAULT_USER_ROLE') to allow to disable the assignment of the default role "User" to newly created users. This will be used for setups where the role-assignments are populated either manually or during first login (e.g. from OIDC claims)


update-docs[bot]: Thanks for opening this pull request! The maintainers of this repository would appreciate it if you would create a [changelog](https://github.com/owncloud/ocis/blob/master/changelog/README.md) item based on your changes.

sonarcloud[bot]: SonarCloud Quality Gate failed.&nbsp; &nbsp; [![Quality Gate failed](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/QualityGateBadge/failed-16px.png 'Quality Gate failed')](https://sonarcloud.io/dashboard?id=owncloud_ocis&pullRequest=5828)

[![Bug](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/bug-16px.png 'Bug')](https://sonarcloud.io/project/issues?id=owncloud_ocis&pullRequest=5828&resolved=false&types=BUG) [![C](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/RatingBadge/C-16px.png 'C')](https://sonarcloud.io/project/issues?id=owncloud_ocis&pullRequest=5828&resolved=false&types=BUG) [1 Bug](https://sonarcloud.io/project/issues?id=owncloud_ocis&pullRequest=5828&resolved=false&types=BUG)  
[![Vulnerability](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/vulnerability-16px.png 'Vulnerability')](https://sonarcloud.io/project/issues?id=owncloud_ocis&pullRequest=5828&resolved=false&types=VULNERABILITY) [![A](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/RatingBadge/A-16px.png 'A')](https://sonarcloud.io/project/issues?id=owncloud_ocis&pullRequest=5828&resolved=false&types=VULNERABILITY) [0 Vulnerabilities](https://sonarcloud.io/project/issues?id=owncloud_ocis&pullRequest=5828&resolved=false&types=VULNERABILITY)  
[![Security Hotspot](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/security_hotspot-16px.png 'Security Hotspot')](https://sonarcloud.io/project/security_hotspots?id=owncloud_ocis&pullRequest=5828&resolved=false&types=SECURITY_HOTSPOT) [![A](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/RatingBadge/A-16px.png 'A')](https://sonarcloud.io/project/security_hotspots?id=owncloud_ocis&pullRequest=5828&resolved=false&types=SECURITY_HOTSPOT) [0 Security Hotspots](https://sonarcloud.io/project/security_hotspots?id=owncloud_ocis&pullRequest=5828&resolved=false&types=SECURITY_HOTSPOT)  
[![Code Smell](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/code_smell-16px.png 'Code Smell')](https://sonarcloud.io/project/issues?id=owncloud_ocis&pullRequest=5828&resolved=false&types=CODE_SMELL) [![A](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/RatingBadge/A-16px.png 'A')](https://sonarcloud.io/project/issues?id=owncloud_ocis&pullRequest=5828&resolved=false&types=CODE_SMELL) [0 Code Smells](https://sonarcloud.io/project/issues?id=owncloud_ocis&pullRequest=5828&resolved=false&types=CODE_SMELL)

[![100.0%](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/CoverageChart/100-16px.png '100.0%')](https://sonarcloud.io/component_measures?id=owncloud_ocis&pullRequest=5828&metric=new_coverage&view=list) [100.0% Coverage](https://sonarcloud.io/component_measures?id=owncloud_ocis&pullRequest=5828&metric=new_coverage&view=list)  
[![0.0%](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/Duplications/3-16px.png '0.0%')](https://sonarcloud.io/component_measures?id=owncloud_ocis&pullRequest=5828&metric=new_duplicated_lines_density&view=list) [0.0% Duplication](https://sonarcloud.io/component_measures?id=owncloud_ocis&pullRequest=5828&metric=new_duplicated_lines_density&view=list)


rhafer: @mmattel As this add a new config setting, please review the description.
sonarcloud[bot]: Kudos, SonarCloud Quality Gate passed!&nbsp; &nbsp; [![Quality Gate passed](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/QualityGateBadge/passed-16px.png 'Quality Gate passed')](https://sonarcloud.io/dashboard?id=owncloud_ocis&pullRequest=5828)

[![Bug](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/bug-16px.png 'Bug')](https://sonarcloud.io/project/issues?id=owncloud_ocis&pullRequest=5828&resolved=false&types=BUG) [![A](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/RatingBadge/A-16px.png 'A')](https://sonarcloud.io/project/issues?id=owncloud_ocis&pullRequest=5828&resolved=false&types=BUG) [0 Bugs](https://sonarcloud.io/project/issues?id=owncloud_ocis&pullRequest=5828&resolved=false&types=BUG)  
[![Vulnerability](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/vulnerability-16px.png 'Vulnerability')](https://sonarcloud.io/project/issues?id=owncloud_ocis&pullRequest=5828&resolved=false&types=VULNERABILITY) [![A](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/RatingBadge/A-16px.png 'A')](https://sonarcloud.io/project/issues?id=owncloud_ocis&pullRequest=5828&resolved=false&types=VULNERABILITY) [0 Vulnerabilities](https://sonarcloud.io/project/issues?id=owncloud_ocis&pullRequest=5828&resolved=false&types=VULNERABILITY)  
[![Security Hotspot](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/security_hotspot-16px.png 'Security Hotspot')](https://sonarcloud.io/project/security_hotspots?id=owncloud_ocis&pullRequest=5828&resolved=false&types=SECURITY_HOTSPOT) [![A](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/RatingBadge/A-16px.png 'A')](https://sonarcloud.io/project/security_hotspots?id=owncloud_ocis&pullRequest=5828&resolved=false&types=SECURITY_HOTSPOT) [0 Security Hotspots](https://sonarcloud.io/project/security_hotspots?id=owncloud_ocis&pullRequest=5828&resolved=false&types=SECURITY_HOTSPOT)  
[![Code Smell](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/common/code_smell-16px.png 'Code Smell')](https://sonarcloud.io/project/issues?id=owncloud_ocis&pullRequest=5828&resolved=false&types=CODE_SMELL) [![A](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/RatingBadge/A-16px.png 'A')](https://sonarcloud.io/project/issues?id=owncloud_ocis&pullRequest=5828&resolved=false&types=CODE_SMELL) [0 Code Smells](https://sonarcloud.io/project/issues?id=owncloud_ocis&pullRequest=5828&resolved=false&types=CODE_SMELL)

[![100.0%](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/CoverageChart/100-16px.png '100.0%')](https://sonarcloud.io/component_measures?id=owncloud_ocis&pullRequest=5828&metric=new_coverage&view=list) [100.0% Coverage](https://sonarcloud.io/component_measures?id=owncloud_ocis&pullRequest=5828&metric=new_coverage&view=list)  
[![0.0%](https://sonarsource.github.io/sonarcloud-github-static-resources/v2/checks/Duplications/3-16px.png '0.0%')](https://sonarcloud.io/component_measures?id=owncloud_ocis&pullRequest=5828&metric=new_duplicated_lines_density&view=list) [0.0% Duplication](https://sonarcloud.io/component_measures?id=owncloud_ocis&pullRequest=5828&metric=new_duplicated_lines_density&view=list)



Patch:
diff --git a/.drone.star b/.drone.star
index 16cff1fb319..06c11e1ed65 100644
--- a/.drone.star
+++ b/.drone.star
@@ -1914,7 +1914,8 @@ def docs():
                     "password": {
                         "from_secret": "github_token",
                     },
-                    "pages_directory": "docs/hugo/content",
+                    "pages_directory": "docs/hugo/content/",
+                    "copy_contents": "true",
                     "target_branch": "docs",
                 },
                 "when": {
diff --git a/services/graph/pkg/config/config.go b/services/graph/pkg/config/config.go
index 382ba7898e5..fd0025ff44d 100644
--- a/services/graph/pkg/config/config.go
+++ b/services/graph/pkg/config/config.go
@@ -61,6 +61,7 @@ type LDAP struct {
 	UserDisplayNameAttribute string `yaml:"user_displayname_attribute" env:"LDAP_USER_SCHEMA_DISPLAY_NAME;GRAPH_LDAP_USER_DISPLAYNAME_ATTRIBUTE" desc:"LDAP Attribute to use for the displayname of users."`
 	UserNameAttribute        string `yaml:"user_name_attribute" env:"LDAP_USER_SCHEMA_USERNAME;GRAPH_LDAP_USER_NAME_ATTRIBUTE" desc:"LDAP Attribute to use for username of users."`
 	UserIDAttribute          string `yaml:"user_id_attribute" env:"LDAP_USER_SCHEMA_ID;GRAPH_LDAP_USER_UID_ATTRIBUTE" desc:"LDAP Attribute to use as the unique ID for users. This should be a stable globally unique ID like a UUID."`
+	UserTypeAttribute        string `yaml:"user_type_attribute" env:"LDAP_USER_SCHEMA_USER_TYPE;GRAPH_LDAP_USER_TYPE_ATTRIBUTE" desc:"LDAP Attribute to distinguish between 'Member' and 'Guest' users. Default is 'ownCloudUserType'."`
 	UserEnabledAttribute     string `yaml:"user_enabled_attribute" env:"LDAP_USER_ENABLED_ATTRIBUTE;GRAPH_USER_ENABLED_ATTRIBUTE" desc:"LDAP Attribute to use as a flag telling if the user is enabled or disabled."`
 	DisableUserMechanism     string `yaml:"disable_user_mechanism" env:"LDAP_DISABLE_USER_MECHANISM;GRAPH_DISABLE_USER_MECHANISM" desc:"An option to control the behavior for disabling users. Supported options are 'none', 'attribute' and 'group'. If set to 'group', disabling a user via API will add the user to the configured group for disabled users, if set to 'attribute' this will be done in the ldap user entry, if set to 'none' the disable request is not processed. Default is 'attribute'."`
 	LdapDisabledUsersGroupDN string `yaml:"ldap_disabled_users_group_dn" env:"LDAP_DISABLED_USERS_GROUP_DN;GRAPH_DISABLED_USERS_GROUP_DN" desc:"The distinguished name of the group to which added users will be classified as disabled when 'disable_user_mechanism' is set to 'group'."`
@@ -98,6 +99,7 @@ type Identity struct {
 type API struct {
 	GroupMembersPatchLimit int    `yaml:"group_members_patch_limit" env:"GRAPH_GROUP_MEMBERS_PATCH_LIMIT" desc:"The amount of group members allowed to be added with a single patch request."`
 	UsernameMatch          string `yaml:"graph_username_match" env:"GRAPH_USERNAME_MATCH" desc:"Option to allow legacy usernames. Supported options are 'default' and 'none'."`
+	AssignDefaultUserRole  bool   `yaml:"graph_assign_default_user_role" env:"GRAPH_ASSIGN_DEFAULT_USER_ROLE" desc:"Whether to assign newly created users the default role 'User'. Set this to 'false' if you want to assign roles manually, or if the role assignment should happen at first login. Set this to 'true' (the default) to assign the role 'User' when creating a new user."`
 }
 
 // Events combines the configuration options for the event bus.
diff --git a/services/graph/pkg/config/defaults/defaultconfig.go b/services/graph/pkg/config/defaults/defaultconfig.go
index d6c11b6f962..7c17e7f4ec1 100644
--- a/services/graph/pkg/config/defaults/defaultconfig.go
+++ b/services/graph/pkg/config/defaults/defaultconfig.go
@@ -40,6 +40,7 @@ func DefaultConfig() *config.Config {
 		API: config.API{
 			GroupMembersPatchLimit: 20,
 			UsernameMatch:          "default",
+			AssignDefaultUserRole:  true,
 		},
 		Reva: shared.DefaultRevaConfig(),
 		Spaces: config.Spaces{
@@ -71,6 +72,7 @@ func DefaultConfig() *config.Config {
 				// FIXME: switch this to some more widely available attribute by default
 				//        ideally this needs to	be constant for the lifetime of a users
 				UserIDAttribute:           "owncloudUUID",
+				UserTypeAttribute:         "ownCloudUserType",
 				UserEnabledAttribute:      "ownCloudUserEnabled",
 				DisableUserMechanism:      "attribute",
 				LdapDisabledUsersGroupDN:  "cn=DisabledUsersGroup,ou=groups,o=libregraph-idm",
diff --git a/services/graph/pkg/identity/ldap.go b/services/graph/pkg/identity/ldap.go
index 4a5dffbb478..dbe899bdbcb 100644
--- a/services/graph/pkg/identity/ldap.go
+++ b/services/graph/pkg/identity/ldap.go
@@ -77,6 +77,7 @@ type userAttributeMap struct {
 	givenName      string
 	surname        string
 	accountEnabled string
+	userType       string
 }
 
 type ldapAttributeValues map[string][]string
@@ -105,6 +106,7 @@ func NewLDAPBackend(lc ldap.Client, config config.LDAP, logger *log.Logger) (*LD
 		accountEnabled: config.UserEnabledAttribute,
 		givenName:      _givenNameAttribute,
 		surname:        _surNameAttribute,
+		userType:       config.UserTypeAttribute,
 	}
 
 	if config.GroupNameAttribute == "" || config.GroupIDAttribute == "" {
@@ -296,6 +298,12 @@ func (i *LDAP) UpdateUser(ctx context.Context, nameOrID string, user libregraph.
 			updateNeeded = true
 		}
 	}
+	if user.GetUserType() != "" {
+		if e.GetEqualFoldAttributeValue(i.userAttributeMap.userType) != user.GetUserType() {
+			mr.Replace(i.userAttributeMap.userType, []string{user.GetUserType()})
+			updateNeeded = true
+		}
+	}
 	if user.PasswordProfile != nil && user.PasswordProfile.GetPassword() != "" {
 		if i.usePwModifyExOp {
 			if err := i.updateUserPassowrd(ctx, e.DN, user.PasswordProfile.GetPassword()); err != nil {
@@ -372,6 +380,7 @@ func (i *LDAP) getUserByDN(dn string) (*ldap.Entry, error) {
 		i.userAttributeMap.surname,
 		i.userAttributeMap.givenName,
 		i.userAttributeMap.accountEnabled,
+		i.userAttributeMap.userType,
 	}
 
 	filter := fmt.Sprintf("(objectClass=%s)", i.userObjectClass)
@@ -469,6 +478,7 @@ func (i *LDAP) getLDAPUserByFilter(filter string) (*ldap.Entry, error) {
 		i.userAttributeMap.surname,
 		i.userAttributeMap.givenName,
 		i.userAttributeMap.accountEnabled,
+		i.userAttributeMap.userType,
 	}
 	return i.searchLDAPEntryByFilter(i.userBaseDN, attrs, filter)
 }
@@ -547,6 +557,7 @@ func (i *LDAP) GetUsers(ctx context.Context, oreq *godata.GoDataRequest) ([]*lib
 			i.userAttributeMap.surname,
 			i.userAttributeMap.givenName,
 			i.userAttributeMap.accountEnabled,
+			i.userAttributeMap.userType,
 		},
 		nil,
 	)
@@ -716,6 +727,7 @@ func (i *LDAP) createUserModelFromLDAP(e *ldap.Entry) *libregraph.User {
 			Id:                       &id,
 			GivenName:                &givenName,
 			Surname:                  &surname,
+			UserType:                 pointerOrNil(e.GetEqualFoldAttributeValue(i.userAttributeMap.userType)),
 			AccountEnabled:           booleanOrNil(e.GetEqualFoldAttributeValue(i.userAttributeMap.accountEnabled)),
 		}
 	}
@@ -730,6 +742,7 @@ func (i *LDAP) userToLDAPAttrValues(user libregraph.User) (map[string][]string,
 		i.userAttributeMap.mail:        {user.GetMail()},
 		"objectClass":                  {"inetOrgPerson", "organizationalPerson", "person", "top", "ownCloudUser"},
 		"cn":                           {user.GetOnPremisesSamAccountName()},
+		i.userAttributeMap.userType:    {user.GetUserType()},
 	}
 
 	if !i.useServerUUID {
@@ -778,6 +791,7 @@ func (i *LDAP) getUserAttrTypes() []string {
 		"owncloudUUID",
 		"userPassword",
 		i.userAttributeMap.accountEnabled,
+		i.userAttributeMap.userType,
 	}
 }
 
diff --git a/services/graph/pkg/identity/ldap_education_user.go b/services/graph/pkg/identity/ldap_education_user.go
index a0b32e57dc4..8bafdd62f63 100644
--- a/services/graph/pkg/identity/ldap_education_user.go
+++ b/services/graph/pkg/identity/ldap_education_user.go
@@ -133,6 +133,12 @@ func (i *LDAP) UpdateEducationUser(ctx context.Context, nameOrID string, user li
 			updateNeeded = true
 		}
 	}
+	if user.GetUserType() != "" {
+		if e.GetEqualFoldAttributeValue(i.userAttributeMap.userType) != user.GetUserType() {
+			mr.Replace(i.userAttributeMap.userType, []string{user.GetUserType()})
+			updateNeeded = true
+		}
+	}
 	if user.PasswordProfile != nil && user.PasswordProfile.GetPassword() != "" {
 		if i.usePwModifyExOp {
 			if err := i.updateUserPassowrd(ctx, e.DN, user.PasswordProfile.GetPassword()); err != nil {
@@ -250,6 +256,8 @@ func (i *LDAP) educationUserToUser(eduUser libregraph.EducationUser) *libregraph
 	user.GivenName = eduUser.GivenName
 	user.DisplayName = eduUser.DisplayName
 	user.Mail = eduUser.Mail
+	user.UserType = eduUser.UserType
+
 	return user
 }
 
@@ -262,6 +270,7 @@ func (i *LDAP) userToEducationUser(user libregraph.User, e *ldap.Entry) *libregr
 	eduUser.GivenName = user.GivenName
 	eduUser.DisplayName = user.DisplayName
 	eduUser.Mail = user.Mail
+	eduUser.UserType = user.UserType
 
 	if e != nil {
 		// Set the education User specific Attributes from the supplied LDAP Entry
@@ -345,6 +354,7 @@ func (i *LDAP) getEducationUserAttrTypes() []string {
 		i.userAttributeMap.surname,
 		i.userAttributeMap.givenName,
 		i.userAttributeMap.accountEnabled,
+		i.userAttributeMap.userType,
 		i.educationConfig.userAttributeMap.identities,
 		i.educationConfig.userAttributeMap.primaryRole,
 		i.educationConfig.memberOfSchoolAttribute,
diff --git a/services/graph/pkg/service/v0/educationuser.go b/services/graph/pkg/service/v0/educationuser.go
index dab3d475403..00943629376 100644
--- a/services/graph/pkg/service/v0/educationuser.go
+++ b/services/graph/pkg/service/v0/educationuser.go
@@ -17,9 +17,7 @@ import (
 	"github.com/go-chi/chi/v5"
 	"github.com/go-chi/render"
 	libregraph "github.com/owncloud/libre-graph-api-go"
-	settings "github.com/owncloud/ocis/v2/protogen/gen/ocis/services/settings/v0"
 	"github.com/owncloud/ocis/v2/services/graph/pkg/service/v0/errorcode"
-	settingssvc "github.com/owncloud/ocis/v2/services/settings/pkg/service/v0"
 )
 
 // GetEducationUsers implements the Service interface.
@@ -126,10 +124,16 @@ func (g Graph) PostEducationUser(w http.ResponseWriter, r *http.Request) {
 			errorcode.InvalidRequest.Render(w, r, http.StatusBadRequest, fmt.Sprintf("%v is not a valid email address", *u.Mail))
 			return
 		}
+	}
+
+	if u.HasUserType() {
+		if !isValidUserType(*u.UserType) {
+			logger.Debug().Interface("user", u).Msg("invalid userType attribute")
+			errorcode.InvalidRequest.Render(w, r, http.StatusBadRequest, "invalid userType attribute, valid options are 'Member' or 'Guest'")
+			return
+		}
 	} else {
-		logger.Debug().Interface("user", u).Msg("could not create education user: missing required Attribute: 'mail'")
-		errorcode.InvalidRequest.Render(w, r, http.StatusBadRequest, "missing required Attribute: 'mail'")
-		return
+		u.SetUserType("Member")
 	}
 
 	if _, ok := u.GetPrimaryRoleOk(); !ok {
@@ -150,21 +154,6 @@ func (g Graph) PostEducationUser(w http.ResponseWriter, r *http.Request) {
 		return
 	}
 
-	// assign roles if possible
-	if g.roleService != nil {
-		// All users get the user role by default currently.
-		// to all new users for now, as create Account request does not have any role field
-		if _, err = g.roleService.AssignRoleToUser(r.Context(), &settings.AssignRoleToUserRequest{
-			AccountUuid: *u.Id,
-			RoleId:      settingssvc.BundleUUIDRoleUser,
-		}); err != nil {
-			// log as error, admin eventually needs to do something
-			logger.Error().Err(err).Str("id", *u.Id).Str("role", settingssvc.BundleUUIDRoleUser).Msg("could not create education user: role assignment failed")
-			errorcode.GeneralException.Render(w, r, http.StatusInternalServerError, "role assignment failed")
-			return
-		}
-	}
-
 	e := events.UserCreated{UserID: *u.Id}
 	if currentUser, ok := revactx.ContextGetUser(r.Context()); ok {
 		e.Executant = currentUser.GetId()
@@ -368,6 +357,14 @@ func (g Graph) PatchEducationUser(w http.ResponseWriter, r *http.Request) {
 		features = append(features, events.UserFeature{Name: "displayname", Value: *name})
 	}
 
+	if changes.HasUserType() {
+		if !isValidUserType(*changes.UserType) {
+			logger.Debug().Interface("user", changes).Msg("invalid userType attribute")
+			errorcode.InvalidRequest.Render(w, r, http.StatusBadRequest, "invalid userType attribute, valid options are 'Member' or 'Guest'")
+			return
+		}
+	}
+
 	logger.Debug().Str("nameid", nameOrID).Interface("changes", *changes).Msg("calling update education user on backend")
 	u, err := g.identityEducationBackend.UpdateEducationUser(r.Context(), nameOrID, *changes)
 	if err != nil {
diff --git a/services/graph/pkg/service/v0/users.go b/services/graph/pkg/service/v0/users.go
index 5d4beb6c46c..d27e4b37e83 100644
--- a/services/graph/pkg/service/v0/users.go
+++ b/services/graph/pkg/service/v0/users.go
@@ -305,6 +305,16 @@ func (g Graph) PostUser(w http.ResponseWriter, r *http.Request) {
 		return
 	}
 
+	if u.HasUserType() {
+		if !isValidUserType(*u.UserType) {
+			logger.Debug().Interface("user", u).Msg("invalid userType attribute")
+			errorcode.InvalidRequest.Render(w, r, http.StatusBadRequest, "invalid userType attribute, valid options are 'Member' or 'Guest'")
+			return
+		}
+	} else {
+		u.SetUserType("Member")
+	}
+
 	logger.Debug().Interface("user", u).Msg("calling create user on backend")
 	if u, err = g.identityBackend.CreateUser(r.Context(), *u); err != nil {
 		logger.Debug().Err(err).Msg("could not create user: backend error")
@@ -318,7 +328,7 @@ func (g Graph) PostUser(w http.ResponseWriter, r *http.Request) {
 	}
 
 	// assign roles if possible
-	if g.roleService != nil {
+	if g.roleService != nil && g.config.API.AssignDefaultUserRole {
 		// All users get the user role by default currently.
 		// to all new users for now, as create Account request does not have any role field
 		if _, err = g.roleService.AssignRoleToUser(r.Context(), &settings.AssignRoleToUserRequest{
@@ -652,6 +662,14 @@ func (g Graph) PatchUser(w http.ResponseWriter, r *http.Request) {
 		features = append(features, events.UserFeature{Name: "displayname", Value: *name})
 	}
 
+	if changes.HasUserType() {
+		if !isValidUserType(*changes.UserType) {
+			logger.Debug().Interface("user", changes).Msg("invalid userType attribute")
+			errorcode.InvalidRequest.Render(w, r, http.StatusBadRequest, "invalid userType attribute, valid options are 'Member' or 'Guest'")
+			return
+		}
+	}
+
 	logger.Debug().Str("nameid", nameOrID).Interface("changes", *changes).Msg("calling update user on backend")
 	u, err := g.identityBackend.UpdateUser(r.Context(), nameOrID, *changes)
 	if err != nil {
@@ -743,3 +761,15 @@ func sortUsers(req *godata.GoDataRequest, users []*libregraph.User) ([]*libregra
 	}
 	return users, nil
 }
+
+func isValidUserType(userType string) bool {
+	userType = strings.ToLower(userType)
+
+	for _, value := range []string{"member", "guest"} {
+		if userType == value {
+			return true
+		}
+	}
+
+	return false
+}
diff --git a/services/userlog/pkg/service/l10n/.tx/config b/services/userlog/pkg/service/l10n/.tx/config
index c8380df8df3..f6b22d9107d 100755
--- a/services/userlog/pkg/service/l10n/.tx/config
+++ b/services/userlog/pkg/service/l10n/.tx/config
@@ -3,7 +3,7 @@ host = https://www.transifex.com
 
 [o:owncloud-org:p:owncloud:r:ocis-userlog]
 file_filter = locale/<lang>/LC_MESSAGES/userlog.po
-minimum_perc = 0
+minimum_perc = 75
 source_file = userlog.pot
 source_lang = en
 type = PO
diff --git a/services/userlog/pkg/service/l10n/locale/ach/LC_MESSAGES/userlog.po b/services/userlog/pkg/service/l10n/locale/ach/LC_MESSAGES/userlog.po
deleted file mode 100644
index 9ea70b6695a..00000000000
--- a/services/userlog/pkg/service/l10n/locale/ach/LC_MESSAGES/userlog.po
+++ /dev/null
@@ -1,82 +0,0 @@
-# SOME DESCRIPTIVE TITLE.
-# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
-# This file is distributed under the same license as the PACKAGE package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
-# 
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: \n"
-"Report-Msgid-Bugs-To: EMAIL\n"
-"POT-Creation-Date: 2023-03-15 09:04+0000\n"
-"PO-Revision-Date: 2023-03-15 08:28+0000\n"
-"Language-Team: Acoli (https://www.transifex.com/owncloud-org/teams/6149/ach/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: ach\n"
-"Plural-Forms: nplurals=2; plural=(n > 1);\n"
-
-#: pkg/service/templates.go:30
-msgid "Access to Space {space} lost"
-msgstr ""
-
-#: pkg/service/templates.go:45
-msgid "Access to {resource} expired"
-msgstr ""
-
-#: pkg/service/templates.go:29
-msgid "Membership expired"
-msgstr ""
-
-#: pkg/service/templates.go:14
-msgid "Removed from Space"
-msgstr ""
-
-#: pkg/service/templates.go:34
-msgid "Resource shared"
-msgstr ""
-
-#: pkg/service/templates.go:39
-msgid "Resource unshared"
-msgstr ""
-
-#: pkg/service/templates.go:44
-msgid "Share expired"
-msgstr ""
-
-#: pkg/service/templates.go:24
-msgid "Space deleted"
-msgstr ""
-
-#: pkg/service/templates.go:19
-msgid "Space disabled"
-msgstr ""
-
-#: pkg/service/templates.go:9
-msgid "Space shared"
-msgstr ""
-
-#: pkg/service/templates.go:10
-msgid "{user} added you to Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:25
-msgid "{user} deleted Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:20
-msgid "{user} disabled Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:15
-msgid "{user} removed you from Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:35
-msgid "{user} shared {resource} with you"
-msgstr ""
-
-#: pkg/service/templates.go:40
-msgid "{user} unshared {resource} with you"
-msgstr ""
diff --git a/services/userlog/pkg/service/l10n/locale/ady/LC_MESSAGES/userlog.po b/services/userlog/pkg/service/l10n/locale/ady/LC_MESSAGES/userlog.po
deleted file mode 100644
index cba43bdef5a..00000000000
--- a/services/userlog/pkg/service/l10n/locale/ady/LC_MESSAGES/userlog.po
+++ /dev/null
@@ -1,82 +0,0 @@
-# SOME DESCRIPTIVE TITLE.
-# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
-# This file is distributed under the same license as the PACKAGE package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
-# 
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: \n"
-"Report-Msgid-Bugs-To: EMAIL\n"
-"POT-Creation-Date: 2023-03-15 09:04+0000\n"
-"PO-Revision-Date: 2023-03-15 08:28+0000\n"
-"Language-Team: Adyghe (https://www.transifex.com/owncloud-org/teams/6149/ady/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: ady\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-
-#: pkg/service/templates.go:30
-msgid "Access to Space {space} lost"
-msgstr ""
-
-#: pkg/service/templates.go:45
-msgid "Access to {resource} expired"
-msgstr ""
-
-#: pkg/service/templates.go:29
-msgid "Membership expired"
-msgstr ""
-
-#: pkg/service/templates.go:14
-msgid "Removed from Space"
-msgstr ""
-
-#: pkg/service/templates.go:34
-msgid "Resource shared"
-msgstr ""
-
-#: pkg/service/templates.go:39
-msgid "Resource unshared"
-msgstr ""
-
-#: pkg/service/templates.go:44
-msgid "Share expired"
-msgstr ""
-
-#: pkg/service/templates.go:24
-msgid "Space deleted"
-msgstr ""
-
-#: pkg/service/templates.go:19
-msgid "Space disabled"
-msgstr ""
-
-#: pkg/service/templates.go:9
-msgid "Space shared"
-msgstr ""
-
-#: pkg/service/templates.go:10
-msgid "{user} added you to Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:25
-msgid "{user} deleted Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:20
-msgid "{user} disabled Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:15
-msgid "{user} removed you from Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:35
-msgid "{user} shared {resource} with you"
-msgstr ""
-
-#: pkg/service/templates.go:40
-msgid "{user} unshared {resource} with you"
-msgstr ""
diff --git a/services/userlog/pkg/service/l10n/locale/ar_DZ/LC_MESSAGES/userlog.po b/services/userlog/pkg/service/l10n/locale/ar_DZ/LC_MESSAGES/userlog.po
deleted file mode 100644
index 0bbbbafe178..00000000000
--- a/services/userlog/pkg/service/l10n/locale/ar_DZ/LC_MESSAGES/userlog.po
+++ /dev/null
@@ -1,82 +0,0 @@
-# SOME DESCRIPTIVE TITLE.
-# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
-# This file is distributed under the same license as the PACKAGE package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
-# 
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: \n"
-"Report-Msgid-Bugs-To: EMAIL\n"
-"POT-Creation-Date: 2023-03-15 09:04+0000\n"
-"PO-Revision-Date: 2023-03-15 08:28+0000\n"
-"Language-Team: Arabic (Algeria) (https://www.transifex.com/owncloud-org/teams/6149/ar_DZ/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: ar_DZ\n"
-"Plural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;\n"
-
-#: pkg/service/templates.go:30
-msgid "Access to Space {space} lost"
-msgstr ""
-
-#: pkg/service/templates.go:45
-msgid "Access to {resource} expired"
-msgstr ""
-
-#: pkg/service/templates.go:29
-msgid "Membership expired"
-msgstr ""
-
-#: pkg/service/templates.go:14
-msgid "Removed from Space"
-msgstr ""
-
-#: pkg/service/templates.go:34
-msgid "Resource shared"
-msgstr ""
-
-#: pkg/service/templates.go:39
-msgid "Resource unshared"
-msgstr ""
-
-#: pkg/service/templates.go:44
-msgid "Share expired"
-msgstr ""
-
-#: pkg/service/templates.go:24
-msgid "Space deleted"
-msgstr ""
-
-#: pkg/service/templates.go:19
-msgid "Space disabled"
-msgstr ""
-
-#: pkg/service/templates.go:9
-msgid "Space shared"
-msgstr ""
-
-#: pkg/service/templates.go:10
-msgid "{user} added you to Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:25
-msgid "{user} deleted Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:20
-msgid "{user} disabled Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:15
-msgid "{user} removed you from Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:35
-msgid "{user} shared {resource} with you"
-msgstr ""
-
-#: pkg/service/templates.go:40
-msgid "{user} unshared {resource} with you"
-msgstr ""
diff --git a/services/userlog/pkg/service/l10n/locale/bg/LC_MESSAGES/userlog.po b/services/userlog/pkg/service/l10n/locale/bg/LC_MESSAGES/userlog.po
deleted file mode 100644
index fd55effe805..00000000000
--- a/services/userlog/pkg/service/l10n/locale/bg/LC_MESSAGES/userlog.po
+++ /dev/null
@@ -1,82 +0,0 @@
-# SOME DESCRIPTIVE TITLE.
-# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
-# This file is distributed under the same license as the PACKAGE package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
-# 
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: \n"
-"Report-Msgid-Bugs-To: EMAIL\n"
-"POT-Creation-Date: 2023-03-15 09:04+0000\n"
-"PO-Revision-Date: 2023-03-15 08:28+0000\n"
-"Language-Team: Bulgarian (https://www.transifex.com/owncloud-org/teams/6149/bg/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: bg\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-
-#: pkg/service/templates.go:30
-msgid "Access to Space {space} lost"
-msgstr ""
-
-#: pkg/service/templates.go:45
-msgid "Access to {resource} expired"
-msgstr ""
-
-#: pkg/service/templates.go:29
-msgid "Membership expired"
-msgstr ""
-
-#: pkg/service/templates.go:14
-msgid "Removed from Space"
-msgstr ""
-
-#: pkg/service/templates.go:34
-msgid "Resource shared"
-msgstr ""
-
-#: pkg/service/templates.go:39
-msgid "Resource unshared"
-msgstr ""
-
-#: pkg/service/templates.go:44
-msgid "Share expired"
-msgstr ""
-
-#: pkg/service/templates.go:24
-msgid "Space deleted"
-msgstr ""
-
-#: pkg/service/templates.go:19
-msgid "Space disabled"
-msgstr ""
-
-#: pkg/service/templates.go:9
-msgid "Space shared"
-msgstr ""
-
-#: pkg/service/templates.go:10
-msgid "{user} added you to Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:25
-msgid "{user} deleted Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:20
-msgid "{user} disabled Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:15
-msgid "{user} removed you from Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:35
-msgid "{user} shared {resource} with you"
-msgstr ""
-
-#: pkg/service/templates.go:40
-msgid "{user} unshared {resource} with you"
-msgstr ""
diff --git a/services/userlog/pkg/service/l10n/locale/brx/LC_MESSAGES/userlog.po b/services/userlog/pkg/service/l10n/locale/brx/LC_MESSAGES/userlog.po
deleted file mode 100644
index 7843b6a93cf..00000000000
--- a/services/userlog/pkg/service/l10n/locale/brx/LC_MESSAGES/userlog.po
+++ /dev/null
@@ -1,82 +0,0 @@
-# SOME DESCRIPTIVE TITLE.
-# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
-# This file is distributed under the same license as the PACKAGE package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
-# 
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: \n"
-"Report-Msgid-Bugs-To: EMAIL\n"
-"POT-Creation-Date: 2023-03-15 09:04+0000\n"
-"PO-Revision-Date: 2023-03-15 08:28+0000\n"
-"Language-Team: Bodo (https://www.transifex.com/owncloud-org/teams/6149/brx/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: brx\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-
-#: pkg/service/templates.go:30
-msgid "Access to Space {space} lost"
-msgstr ""
-
-#: pkg/service/templates.go:45
-msgid "Access to {resource} expired"
-msgstr ""
-
-#: pkg/service/templates.go:29
-msgid "Membership expired"
-msgstr ""
-
-#: pkg/service/templates.go:14
-msgid "Removed from Space"
-msgstr ""
-
-#: pkg/service/templates.go:34
-msgid "Resource shared"
-msgstr ""
-
-#: pkg/service/templates.go:39
-msgid "Resource unshared"
-msgstr ""
-
-#: pkg/service/templates.go:44
-msgid "Share expired"
-msgstr ""
-
-#: pkg/service/templates.go:24
-msgid "Space deleted"
-msgstr ""
-
-#: pkg/service/templates.go:19
-msgid "Space disabled"
-msgstr ""
-
-#: pkg/service/templates.go:9
-msgid "Space shared"
-msgstr ""
-
-#: pkg/service/templates.go:10
-msgid "{user} added you to Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:25
-msgid "{user} deleted Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:20
-msgid "{user} disabled Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:15
-msgid "{user} removed you from Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:35
-msgid "{user} shared {resource} with you"
-msgstr ""
-
-#: pkg/service/templates.go:40
-msgid "{user} unshared {resource} with you"
-msgstr ""
diff --git a/services/userlog/pkg/service/l10n/locale/cy_GB/LC_MESSAGES/userlog.po b/services/userlog/pkg/service/l10n/locale/cy_GB/LC_MESSAGES/userlog.po
deleted file mode 100644
index b13c0d79aee..00000000000
--- a/services/userlog/pkg/service/l10n/locale/cy_GB/LC_MESSAGES/userlog.po
+++ /dev/null
@@ -1,82 +0,0 @@
-# SOME DESCRIPTIVE TITLE.
-# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
-# This file is distributed under the same license as the PACKAGE package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
-# 
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: \n"
-"Report-Msgid-Bugs-To: EMAIL\n"
-"POT-Creation-Date: 2023-03-15 09:04+0000\n"
-"PO-Revision-Date: 2023-03-15 08:28+0000\n"
-"Language-Team: Welsh (United Kingdom) (https://www.transifex.com/owncloud-org/teams/6149/cy_GB/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: cy_GB\n"
-"Plural-Forms: nplurals=4; plural=(n==1) ? 0 : (n==2) ? 1 : (n != 8 && n != 11) ? 2 : 3;\n"
-
-#: pkg/service/templates.go:30
-msgid "Access to Space {space} lost"
-msgstr ""
-
-#: pkg/service/templates.go:45
-msgid "Access to {resource} expired"
-msgstr ""
-
-#: pkg/service/templates.go:29
-msgid "Membership expired"
-msgstr ""
-
-#: pkg/service/templates.go:14
-msgid "Removed from Space"
-msgstr ""
-
-#: pkg/service/templates.go:34
-msgid "Resource shared"
-msgstr ""
-
-#: pkg/service/templates.go:39
-msgid "Resource unshared"
-msgstr ""
-
-#: pkg/service/templates.go:44
-msgid "Share expired"
-msgstr ""
-
-#: pkg/service/templates.go:24
-msgid "Space deleted"
-msgstr ""
-
-#: pkg/service/templates.go:19
-msgid "Space disabled"
-msgstr ""
-
-#: pkg/service/templates.go:9
-msgid "Space shared"
-msgstr ""
-
-#: pkg/service/templates.go:10
-msgid "{user} added you to Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:25
-msgid "{user} deleted Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:20
-msgid "{user} disabled Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:15
-msgid "{user} removed you from Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:35
-msgid "{user} shared {resource} with you"
-msgstr ""
-
-#: pkg/service/templates.go:40
-msgid "{user} unshared {resource} with you"
-msgstr ""
diff --git a/services/userlog/pkg/service/l10n/locale/bg@Cyrl/LC_MESSAGES/userlog.po b/services/userlog/pkg/service/l10n/locale/de/LC_MESSAGES/userlog.po
similarity index 61%
rename from services/userlog/pkg/service/l10n/locale/bg@Cyrl/LC_MESSAGES/userlog.po
rename to services/userlog/pkg/service/l10n/locale/de/LC_MESSAGES/userlog.po
index 5542a47a970..f84b1d47860 100644
--- a/services/userlog/pkg/service/l10n/locale/bg@Cyrl/LC_MESSAGES/userlog.po
+++ b/services/userlog/pkg/service/l10n/locale/de/LC_MESSAGES/userlog.po
@@ -3,80 +3,84 @@
 # This file is distributed under the same license as the PACKAGE package.
 # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
 # 
+# Translators:
+# Michael Barz <mbarz@owncloud.com>, 2023
+# 
 #, fuzzy
 msgid ""
 msgstr ""
 "Project-Id-Version: \n"
 "Report-Msgid-Bugs-To: EMAIL\n"
-"POT-Creation-Date: 2023-03-15 09:04+0000\n"
+"POT-Creation-Date: 2023-03-15 09:23+0000\n"
 "PO-Revision-Date: 2023-03-15 08:28+0000\n"
-"Language-Team: Bulgarian (Cyrillic) (https://www.transifex.com/owncloud-org/teams/6149/bg@Cyrl/)\n"
+"Last-Translator: Michael Barz <mbarz@owncloud.com>, 2023\n"
+"Language-Team: German (https://www.transifex.com/owncloud-org/teams/6149/de/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
-"Language: bg@Cyrl\n"
+"Language: de\n"
 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
 #: pkg/service/templates.go:30
 msgid "Access to Space {space} lost"
-msgstr ""
+msgstr "Der Zugriff zu dem Space {space} wurde entfernt"
 
 #: pkg/service/templates.go:45
 msgid "Access to {resource} expired"
-msgstr ""
+msgstr "Der Zugriff auf {resource} ist abgelaufen"
 
 #: pkg/service/templates.go:29
 msgid "Membership expired"
-msgstr ""
+msgstr "Mitgliedschaft abgelaufen"
 
 #: pkg/service/templates.go:14
 msgid "Removed from Space"
-msgstr ""
+msgstr "Aus dem Space entfernt"
 
 #: pkg/service/templates.go:34
 msgid "Resource shared"
-msgstr ""
+msgstr "Ressource geteilt"
 
 #: pkg/service/templates.go:39
 msgid "Resource unshared"
-msgstr ""
+msgstr "Resource nicht mehr geteilt"
 
 #: pkg/service/templates.go:44
 msgid "Share expired"
-msgstr ""
+msgstr "Freigabe abgelaufen"
 
 #: pkg/service/templates.go:24
 msgid "Space deleted"
-msgstr ""
+msgstr "Space gelöscht"
 
 #: pkg/service/templates.go:19
 msgid "Space disabled"
-msgstr ""
+msgstr "Space deaktiviert"
 
 #: pkg/service/templates.go:9
 msgid "Space shared"
-msgstr ""
+msgstr "Space freigegeben"
 
 #: pkg/service/templates.go:10
 msgid "{user} added you to Space {space}"
-msgstr ""
+msgstr "{user} hat Sie zum Space {space} hinzugefügt"
 
 #: pkg/service/templates.go:25
 msgid "{user} deleted Space {space}"
-msgstr ""
+msgstr "{user} hat den Space {space} gelöscht"
 
 #: pkg/service/templates.go:20
 msgid "{user} disabled Space {space}"
-msgstr ""
+msgstr "{user} hat den Space {space} deaktiviert"
 
 #: pkg/service/templates.go:15
 msgid "{user} removed you from Space {space}"
-msgstr ""
+msgstr "{user} hat Sie aus dem Space {space} entfernt"
 
 #: pkg/service/templates.go:35
 msgid "{user} shared {resource} with you"
-msgstr ""
+msgstr "{user} hat {resource} mit Ihnen geteilt"
 
 #: pkg/service/templates.go:40
 msgid "{user} unshared {resource} with you"
-msgstr ""
+msgstr "{user} hat die Freigabe {resource} für Sie zurückgenommen"
diff --git a/services/userlog/pkg/service/l10n/locale/de_AT/LC_MESSAGES/userlog.po b/services/userlog/pkg/service/l10n/locale/de_AT/LC_MESSAGES/userlog.po
deleted file mode 100644
index 0b90956160c..00000000000
--- a/services/userlog/pkg/service/l10n/locale/de_AT/LC_MESSAGES/userlog.po
+++ /dev/null
@@ -1,82 +0,0 @@
-# SOME DESCRIPTIVE TITLE.
-# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
-# This file is distributed under the same license as the PACKAGE package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
-# 
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: \n"
-"Report-Msgid-Bugs-To: EMAIL\n"
-"POT-Creation-Date: 2023-03-15 09:04+0000\n"
-"PO-Revision-Date: 2023-03-15 08:28+0000\n"
-"Language-Team: German (Austria) (https://www.transifex.com/owncloud-org/teams/6149/de_AT/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: de_AT\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-
-#: pkg/service/templates.go:30
-msgid "Access to Space {space} lost"
-msgstr ""
-
-#: pkg/service/templates.go:45
-msgid "Access to {resource} expired"
-msgstr ""
-
-#: pkg/service/templates.go:29
-msgid "Membership expired"
-msgstr ""
-
-#: pkg/service/templates.go:14
-msgid "Removed from Space"
-msgstr ""
-
-#: pkg/service/templates.go:34
-msgid "Resource shared"
-msgstr ""
-
-#: pkg/service/templates.go:39
-msgid "Resource unshared"
-msgstr ""
-
-#: pkg/service/templates.go:44
-msgid "Share expired"
-msgstr ""
-
-#: pkg/service/templates.go:24
-msgid "Space deleted"
-msgstr ""
-
-#: pkg/service/templates.go:19
-msgid "Space disabled"
-msgstr ""
-
-#: pkg/service/templates.go:9
-msgid "Space shared"
-msgstr ""
-
-#: pkg/service/templates.go:10
-msgid "{user} added you to Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:25
-msgid "{user} deleted Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:20
-msgid "{user} disabled Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:15
-msgid "{user} removed you from Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:35
-msgid "{user} shared {resource} with you"
-msgstr ""
-
-#: pkg/service/templates.go:40
-msgid "{user} unshared {resource} with you"
-msgstr ""
diff --git a/services/userlog/pkg/service/l10n/locale/de_DE/LC_MESSAGES/userlog.po b/services/userlog/pkg/service/l10n/locale/de_DE/LC_MESSAGES/userlog.po
deleted file mode 100644
index d38f57feac1..00000000000
--- a/services/userlog/pkg/service/l10n/locale/de_DE/LC_MESSAGES/userlog.po
+++ /dev/null
@@ -1,83 +0,0 @@
-# German translations for  package
-# German translation for .
-# Copyright (C) 2023 THE 'S COPYRIGHT HOLDER
-# This file is distributed under the same license as the  package.
-# Michael Barz <mbarz@owncloud.com>, 2023.
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: \n"
-"Report-Msgid-Bugs-To: EMAIL\n"
-"POT-Creation-Date: 2023-03-13 23:36+0100\n"
-"PO-Revision-Date: 2023-03-13 23:36+0100\n"
-"Last-Translator: Michael Barz <mbarz@owncloud.com>\n"
-"Language-Team: German <translation-team-de@lists.sourceforge.net>\n"
-"Language: de\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-
-#: pkg/service/templates.go:30
-msgid "Access to Space {space} lost"
-msgstr ""
-
-#: pkg/service/templates.go:45
-msgid "Access to {resource} expired"
-msgstr ""
-
-#: pkg/service/templates.go:29
-msgid "Membership expired"
-msgstr ""
-
-#: pkg/service/templates.go:14
-msgid "Removed from Space"
-msgstr ""
-
-#: pkg/service/templates.go:34
-msgid "Resource shared"
-msgstr ""
-
-#: pkg/service/templates.go:39
-msgid "Resource unshared"
-msgstr ""
-
-#: pkg/service/templates.go:44
-msgid "Share expired"
-msgstr ""
-
-#: pkg/service/templates.go:24
-msgid "Space deleted"
-msgstr ""
-
-#: pkg/service/templates.go:19
-msgid "Space disabled"
-msgstr ""
-
-#: pkg/service/templates.go:9
-msgid "Space shared"
-msgstr ""
-
-#: pkg/service/templates.go:10
-msgid "{user} added you to Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:25
-msgid "{user} deleted Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:20
-msgid "{user} disabled Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:15
-msgid "{user} removed you from Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:35
-msgid "{user} shared {resource} with you"
-msgstr ""
-
-#: pkg/service/templates.go:40
-msgid "{user} unshared {resource} with you"
-msgstr ""
diff --git a/services/userlog/pkg/service/l10n/locale/el_GR/LC_MESSAGES/userlog.po b/services/userlog/pkg/service/l10n/locale/el_GR/LC_MESSAGES/userlog.po
deleted file mode 100644
index 80910d00550..00000000000
--- a/services/userlog/pkg/service/l10n/locale/el_GR/LC_MESSAGES/userlog.po
+++ /dev/null
@@ -1,82 +0,0 @@
-# SOME DESCRIPTIVE TITLE.
-# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
-# This file is distributed under the same license as the PACKAGE package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
-# 
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: \n"
-"Report-Msgid-Bugs-To: EMAIL\n"
-"POT-Creation-Date: 2023-03-15 09:04+0000\n"
-"PO-Revision-Date: 2023-03-15 08:28+0000\n"
-"Language-Team: Greek (Greece) (https://www.transifex.com/owncloud-org/teams/6149/el_GR/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: el_GR\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-
-#: pkg/service/templates.go:30
-msgid "Access to Space {space} lost"
-msgstr ""
-
-#: pkg/service/templates.go:45
-msgid "Access to {resource} expired"
-msgstr ""
-
-#: pkg/service/templates.go:29
-msgid "Membership expired"
-msgstr ""
-
-#: pkg/service/templates.go:14
-msgid "Removed from Space"
-msgstr ""
-
-#: pkg/service/templates.go:34
-msgid "Resource shared"
-msgstr ""
-
-#: pkg/service/templates.go:39
-msgid "Resource unshared"
-msgstr ""
-
-#: pkg/service/templates.go:44
-msgid "Share expired"
-msgstr ""
-
-#: pkg/service/templates.go:24
-msgid "Space deleted"
-msgstr ""
-
-#: pkg/service/templates.go:19
-msgid "Space disabled"
-msgstr ""
-
-#: pkg/service/templates.go:9
-msgid "Space shared"
-msgstr ""
-
-#: pkg/service/templates.go:10
-msgid "{user} added you to Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:25
-msgid "{user} deleted Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:20
-msgid "{user} disabled Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:15
-msgid "{user} removed you from Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:35
-msgid "{user} shared {resource} with you"
-msgstr ""
-
-#: pkg/service/templates.go:40
-msgid "{user} unshared {resource} with you"
-msgstr ""
diff --git a/services/userlog/pkg/service/l10n/locale/en_RS/LC_MESSAGES/userlog.po b/services/userlog/pkg/service/l10n/locale/en_RS/LC_MESSAGES/userlog.po
deleted file mode 100644
index 86a9776facd..00000000000
--- a/services/userlog/pkg/service/l10n/locale/en_RS/LC_MESSAGES/userlog.po
+++ /dev/null
@@ -1,82 +0,0 @@
-# SOME DESCRIPTIVE TITLE.
-# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
-# This file is distributed under the same license as the PACKAGE package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
-# 
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: \n"
-"Report-Msgid-Bugs-To: EMAIL\n"
-"POT-Creation-Date: 2023-03-15 09:04+0000\n"
-"PO-Revision-Date: 2023-03-15 08:28+0000\n"
-"Language-Team: English (Serbia) (https://www.transifex.com/owncloud-org/teams/6149/en_RS/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: en_RS\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-
-#: pkg/service/templates.go:30
-msgid "Access to Space {space} lost"
-msgstr ""
-
-#: pkg/service/templates.go:45
-msgid "Access to {resource} expired"
-msgstr ""
-
-#: pkg/service/templates.go:29
-msgid "Membership expired"
-msgstr ""
-
-#: pkg/service/templates.go:14
-msgid "Removed from Space"
-msgstr ""
-
-#: pkg/service/templates.go:34
-msgid "Resource shared"
-msgstr ""
-
-#: pkg/service/templates.go:39
-msgid "Resource unshared"
-msgstr ""
-
-#: pkg/service/templates.go:44
-msgid "Share expired"
-msgstr ""
-
-#: pkg/service/templates.go:24
-msgid "Space deleted"
-msgstr ""
-
-#: pkg/service/templates.go:19
-msgid "Space disabled"
-msgstr ""
-
-#: pkg/service/templates.go:9
-msgid "Space shared"
-msgstr ""
-
-#: pkg/service/templates.go:10
-msgid "{user} added you to Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:25
-msgid "{user} deleted Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:20
-msgid "{user} disabled Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:15
-msgid "{user} removed you from Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:35
-msgid "{user} shared {resource} with you"
-msgstr ""
-
-#: pkg/service/templates.go:40
-msgid "{user} unshared {resource} with you"
-msgstr ""
diff --git a/services/userlog/pkg/service/l10n/locale/en_ZM/LC_MESSAGES/userlog.po b/services/userlog/pkg/service/l10n/locale/en_ZM/LC_MESSAGES/userlog.po
deleted file mode 100644
index 468ea4a2efe..00000000000
--- a/services/userlog/pkg/service/l10n/locale/en_ZM/LC_MESSAGES/userlog.po
+++ /dev/null
@@ -1,82 +0,0 @@
-# SOME DESCRIPTIVE TITLE.
-# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
-# This file is distributed under the same license as the PACKAGE package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
-# 
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: \n"
-"Report-Msgid-Bugs-To: EMAIL\n"
-"POT-Creation-Date: 2023-03-15 09:04+0000\n"
-"PO-Revision-Date: 2023-03-15 08:28+0000\n"
-"Language-Team: English (Zambia) (https://www.transifex.com/owncloud-org/teams/6149/en_ZM/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: en_ZM\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-
-#: pkg/service/templates.go:30
-msgid "Access to Space {space} lost"
-msgstr ""
-
-#: pkg/service/templates.go:45
-msgid "Access to {resource} expired"
-msgstr ""
-
-#: pkg/service/templates.go:29
-msgid "Membership expired"
-msgstr ""
-
-#: pkg/service/templates.go:14
-msgid "Removed from Space"
-msgstr ""
-
-#: pkg/service/templates.go:34
-msgid "Resource shared"
-msgstr ""
-
-#: pkg/service/templates.go:39
-msgid "Resource unshared"
-msgstr ""
-
-#: pkg/service/templates.go:44
-msgid "Share expired"
-msgstr ""
-
-#: pkg/service/templates.go:24
-msgid "Space deleted"
-msgstr ""
-
-#: pkg/service/templates.go:19
-msgid "Space disabled"
-msgstr ""
-
-#: pkg/service/templates.go:9
-msgid "Space shared"
-msgstr ""
-
-#: pkg/service/templates.go:10
-msgid "{user} added you to Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:25
-msgid "{user} deleted Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:20
-msgid "{user} disabled Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:15
-msgid "{user} removed you from Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:35
-msgid "{user} shared {resource} with you"
-msgstr ""
-
-#: pkg/service/templates.go:40
-msgid "{user} unshared {resource} with you"
-msgstr ""
diff --git a/services/userlog/pkg/service/l10n/locale/es_419/LC_MESSAGES/userlog.po b/services/userlog/pkg/service/l10n/locale/es_419/LC_MESSAGES/userlog.po
deleted file mode 100644
index 82e541400bc..00000000000
--- a/services/userlog/pkg/service/l10n/locale/es_419/LC_MESSAGES/userlog.po
+++ /dev/null
@@ -1,82 +0,0 @@
-# SOME DESCRIPTIVE TITLE.
-# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
-# This file is distributed under the same license as the PACKAGE package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
-# 
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: \n"
-"Report-Msgid-Bugs-To: EMAIL\n"
-"POT-Creation-Date: 2023-03-15 09:04+0000\n"
-"PO-Revision-Date: 2023-03-15 08:28+0000\n"
-"Language-Team: Spanish (Latin America) (https://www.transifex.com/owncloud-org/teams/6149/es_419/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: es_419\n"
-"Plural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"
-
-#: pkg/service/templates.go:30
-msgid "Access to Space {space} lost"
-msgstr ""
-
-#: pkg/service/templates.go:45
-msgid "Access to {resource} expired"
-msgstr ""
-
-#: pkg/service/templates.go:29
-msgid "Membership expired"
-msgstr ""
-
-#: pkg/service/templates.go:14
-msgid "Removed from Space"
-msgstr ""
-
-#: pkg/service/templates.go:34
-msgid "Resource shared"
-msgstr ""
-
-#: pkg/service/templates.go:39
-msgid "Resource unshared"
-msgstr ""
-
-#: pkg/service/templates.go:44
-msgid "Share expired"
-msgstr ""
-
-#: pkg/service/templates.go:24
-msgid "Space deleted"
-msgstr ""
-
-#: pkg/service/templates.go:19
-msgid "Space disabled"
-msgstr ""
-
-#: pkg/service/templates.go:9
-msgid "Space shared"
-msgstr ""
-
-#: pkg/service/templates.go:10
-msgid "{user} added you to Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:25
-msgid "{user} deleted Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:20
-msgid "{user} disabled Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:15
-msgid "{user} removed you from Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:35
-msgid "{user} shared {resource} with you"
-msgstr ""
-
-#: pkg/service/templates.go:40
-msgid "{user} unshared {resource} with you"
-msgstr ""
diff --git a/services/userlog/pkg/service/l10n/locale/es_US/LC_MESSAGES/userlog.po b/services/userlog/pkg/service/l10n/locale/es_US/LC_MESSAGES/userlog.po
deleted file mode 100644
index 716833cce57..00000000000
--- a/services/userlog/pkg/service/l10n/locale/es_US/LC_MESSAGES/userlog.po
+++ /dev/null
@@ -1,82 +0,0 @@
-# SOME DESCRIPTIVE TITLE.
-# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
-# This file is distributed under the same license as the PACKAGE package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
-# 
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: \n"
-"Report-Msgid-Bugs-To: EMAIL\n"
-"POT-Creation-Date: 2023-03-15 09:04+0000\n"
-"PO-Revision-Date: 2023-03-15 08:28+0000\n"
-"Language-Team: Spanish (United States) (https://www.transifex.com/owncloud-org/teams/6149/es_US/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: es_US\n"
-"Plural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"
-
-#: pkg/service/templates.go:30
-msgid "Access to Space {space} lost"
-msgstr ""
-
-#: pkg/service/templates.go:45
-msgid "Access to {resource} expired"
-msgstr ""
-
-#: pkg/service/templates.go:29
-msgid "Membership expired"
-msgstr ""
-
-#: pkg/service/templates.go:14
-msgid "Removed from Space"
-msgstr ""
-
-#: pkg/service/templates.go:34
-msgid "Resource shared"
-msgstr ""
-
-#: pkg/service/templates.go:39
-msgid "Resource unshared"
-msgstr ""
-
-#: pkg/service/templates.go:44
-msgid "Share expired"
-msgstr ""
-
-#: pkg/service/templates.go:24
-msgid "Space deleted"
-msgstr ""
-
-#: pkg/service/templates.go:19
-msgid "Space disabled"
-msgstr ""
-
-#: pkg/service/templates.go:9
-msgid "Space shared"
-msgstr ""
-
-#: pkg/service/templates.go:10
-msgid "{user} added you to Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:25
-msgid "{user} deleted Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:20
-msgid "{user} disabled Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:15
-msgid "{user} removed you from Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:35
-msgid "{user} shared {resource} with you"
-msgstr ""
-
-#: pkg/service/templates.go:40
-msgid "{user} unshared {resource} with you"
-msgstr ""
diff --git a/services/userlog/pkg/service/l10n/locale/fa_IR/LC_MESSAGES/userlog.po b/services/userlog/pkg/service/l10n/locale/fa_IR/LC_MESSAGES/userlog.po
deleted file mode 100644
index 90477b4e7b4..00000000000
--- a/services/userlog/pkg/service/l10n/locale/fa_IR/LC_MESSAGES/userlog.po
+++ /dev/null
@@ -1,82 +0,0 @@
-# SOME DESCRIPTIVE TITLE.
-# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
-# This file is distributed under the same license as the PACKAGE package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
-# 
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: \n"
-"Report-Msgid-Bugs-To: EMAIL\n"
-"POT-Creation-Date: 2023-03-15 09:04+0000\n"
-"PO-Revision-Date: 2023-03-15 08:28+0000\n"
-"Language-Team: Persian (Iran) (https://www.transifex.com/owncloud-org/teams/6149/fa_IR/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: fa_IR\n"
-"Plural-Forms: nplurals=2; plural=(n > 1);\n"
-
-#: pkg/service/templates.go:30
-msgid "Access to Space {space} lost"
-msgstr ""
-
-#: pkg/service/templates.go:45
-msgid "Access to {resource} expired"
-msgstr ""
-
-#: pkg/service/templates.go:29
-msgid "Membership expired"
-msgstr ""
-
-#: pkg/service/templates.go:14
-msgid "Removed from Space"
-msgstr ""
-
-#: pkg/service/templates.go:34
-msgid "Resource shared"
-msgstr ""
-
-#: pkg/service/templates.go:39
-msgid "Resource unshared"
-msgstr ""
-
-#: pkg/service/templates.go:44
-msgid "Share expired"
-msgstr ""
-
-#: pkg/service/templates.go:24
-msgid "Space deleted"
-msgstr ""
-
-#: pkg/service/templates.go:19
-msgid "Space disabled"
-msgstr ""
-
-#: pkg/service/templates.go:9
-msgid "Space shared"
-msgstr ""
-
-#: pkg/service/templates.go:10
-msgid "{user} added you to Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:25
-msgid "{user} deleted Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:20
-msgid "{user} disabled Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:15
-msgid "{user} removed you from Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:35
-msgid "{user} shared {resource} with you"
-msgstr ""
-
-#: pkg/service/templates.go:40
-msgid "{user} unshared {resource} with you"
-msgstr ""
diff --git a/services/userlog/pkg/service/l10n/locale/fi_FI/LC_MESSAGES/userlog.po b/services/userlog/pkg/service/l10n/locale/fi_FI/LC_MESSAGES/userlog.po
deleted file mode 100644
index 6286c613e03..00000000000
--- a/services/userlog/pkg/service/l10n/locale/fi_FI/LC_MESSAGES/userlog.po
+++ /dev/null
@@ -1,82 +0,0 @@
-# SOME DESCRIPTIVE TITLE.
-# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
-# This file is distributed under the same license as the PACKAGE package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
-# 
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: \n"
-"Report-Msgid-Bugs-To: EMAIL\n"
-"POT-Creation-Date: 2023-03-15 09:04+0000\n"
-"PO-Revision-Date: 2023-03-15 08:28+0000\n"
-"Language-Team: Finnish (Finland) (https://www.transifex.com/owncloud-org/teams/6149/fi_FI/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: fi_FI\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-
-#: pkg/service/templates.go:30
-msgid "Access to Space {space} lost"
-msgstr ""
-
-#: pkg/service/templates.go:45
-msgid "Access to {resource} expired"
-msgstr ""
-
-#: pkg/service/templates.go:29
-msgid "Membership expired"
-msgstr ""
-
-#: pkg/service/templates.go:14
-msgid "Removed from Space"
-msgstr ""
-
-#: pkg/service/templates.go:34
-msgid "Resource shared"
-msgstr ""
-
-#: pkg/service/templates.go:39
-msgid "Resource unshared"
-msgstr ""
-
-#: pkg/service/templates.go:44
-msgid "Share expired"
-msgstr ""
-
-#: pkg/service/templates.go:24
-msgid "Space deleted"
-msgstr ""
-
-#: pkg/service/templates.go:19
-msgid "Space disabled"
-msgstr ""
-
-#: pkg/service/templates.go:9
-msgid "Space shared"
-msgstr ""
-
-#: pkg/service/templates.go:10
-msgid "{user} added you to Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:25
-msgid "{user} deleted Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:20
-msgid "{user} disabled Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:15
-msgid "{user} removed you from Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:35
-msgid "{user} shared {resource} with you"
-msgstr ""
-
-#: pkg/service/templates.go:40
-msgid "{user} unshared {resource} with you"
-msgstr ""
diff --git a/services/userlog/pkg/service/l10n/locale/fy_NL/LC_MESSAGES/userlog.po b/services/userlog/pkg/service/l10n/locale/fy_NL/LC_MESSAGES/userlog.po
deleted file mode 100644
index 95e1acec779..00000000000
--- a/services/userlog/pkg/service/l10n/locale/fy_NL/LC_MESSAGES/userlog.po
+++ /dev/null
@@ -1,82 +0,0 @@
-# SOME DESCRIPTIVE TITLE.
-# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
-# This file is distributed under the same license as the PACKAGE package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
-# 
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: \n"
-"Report-Msgid-Bugs-To: EMAIL\n"
-"POT-Creation-Date: 2023-03-15 09:04+0000\n"
-"PO-Revision-Date: 2023-03-15 08:28+0000\n"
-"Language-Team: Western Frisian (Netherlands) (https://www.transifex.com/owncloud-org/teams/6149/fy_NL/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: fy_NL\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-
-#: pkg/service/templates.go:30
-msgid "Access to Space {space} lost"
-msgstr ""
-
-#: pkg/service/templates.go:45
-msgid "Access to {resource} expired"
-msgstr ""
-
-#: pkg/service/templates.go:29
-msgid "Membership expired"
-msgstr ""
-
-#: pkg/service/templates.go:14
-msgid "Removed from Space"
-msgstr ""
-
-#: pkg/service/templates.go:34
-msgid "Resource shared"
-msgstr ""
-
-#: pkg/service/templates.go:39
-msgid "Resource unshared"
-msgstr ""
-
-#: pkg/service/templates.go:44
-msgid "Share expired"
-msgstr ""
-
-#: pkg/service/templates.go:24
-msgid "Space deleted"
-msgstr ""
-
-#: pkg/service/templates.go:19
-msgid "Space disabled"
-msgstr ""
-
-#: pkg/service/templates.go:9
-msgid "Space shared"
-msgstr ""
-
-#: pkg/service/templates.go:10
-msgid "{user} added you to Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:25
-msgid "{user} deleted Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:20
-msgid "{user} disabled Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:15
-msgid "{user} removed you from Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:35
-msgid "{user} shared {resource} with you"
-msgstr ""
-
-#: pkg/service/templates.go:40
-msgid "{user} unshared {resource} with you"
-msgstr ""
diff --git a/services/userlog/pkg/service/l10n/locale/gl_ES/LC_MESSAGES/userlog.po b/services/userlog/pkg/service/l10n/locale/gl_ES/LC_MESSAGES/userlog.po
deleted file mode 100644
index e28cebcd8b3..00000000000
--- a/services/userlog/pkg/service/l10n/locale/gl_ES/LC_MESSAGES/userlog.po
+++ /dev/null
@@ -1,82 +0,0 @@
-# SOME DESCRIPTIVE TITLE.
-# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
-# This file is distributed under the same license as the PACKAGE package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
-# 
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: \n"
-"Report-Msgid-Bugs-To: EMAIL\n"
-"POT-Creation-Date: 2023-03-15 09:04+0000\n"
-"PO-Revision-Date: 2023-03-15 08:28+0000\n"
-"Language-Team: Galician (Spain) (https://www.transifex.com/owncloud-org/teams/6149/gl_ES/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: gl_ES\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-
-#: pkg/service/templates.go:30
-msgid "Access to Space {space} lost"
-msgstr ""
-
-#: pkg/service/templates.go:45
-msgid "Access to {resource} expired"
-msgstr ""
-
-#: pkg/service/templates.go:29
-msgid "Membership expired"
-msgstr ""
-
-#: pkg/service/templates.go:14
-msgid "Removed from Space"
-msgstr ""
-
-#: pkg/service/templates.go:34
-msgid "Resource shared"
-msgstr ""
-
-#: pkg/service/templates.go:39
-msgid "Resource unshared"
-msgstr ""
-
-#: pkg/service/templates.go:44
-msgid "Share expired"
-msgstr ""
-
-#: pkg/service/templates.go:24
-msgid "Space deleted"
-msgstr ""
-
-#: pkg/service/templates.go:19
-msgid "Space disabled"
-msgstr ""
-
-#: pkg/service/templates.go:9
-msgid "Space shared"
-msgstr ""
-
-#: pkg/service/templates.go:10
-msgid "{user} added you to Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:25
-msgid "{user} deleted Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:20
-msgid "{user} disabled Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:15
-msgid "{user} removed you from Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:35
-msgid "{user} shared {resource} with you"
-msgstr ""
-
-#: pkg/service/templates.go:40
-msgid "{user} unshared {resource} with you"
-msgstr ""
diff --git a/services/userlog/pkg/service/l10n/locale/grc/LC_MESSAGES/userlog.po b/services/userlog/pkg/service/l10n/locale/grc/LC_MESSAGES/userlog.po
deleted file mode 100644
index a154a8ef53d..00000000000
--- a/services/userlog/pkg/service/l10n/locale/grc/LC_MESSAGES/userlog.po
+++ /dev/null
@@ -1,82 +0,0 @@
-# SOME DESCRIPTIVE TITLE.
-# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
-# This file is distributed under the same license as the PACKAGE package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
-# 
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: \n"
-"Report-Msgid-Bugs-To: EMAIL\n"
-"POT-Creation-Date: 2023-03-15 09:04+0000\n"
-"PO-Revision-Date: 2023-03-15 08:28+0000\n"
-"Language-Team: Ancient Greek (https://www.transifex.com/owncloud-org/teams/6149/grc/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: grc\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-
-#: pkg/service/templates.go:30
-msgid "Access to Space {space} lost"
-msgstr ""
-
-#: pkg/service/templates.go:45
-msgid "Access to {resource} expired"
-msgstr ""
-
-#: pkg/service/templates.go:29
-msgid "Membership expired"
-msgstr ""
-
-#: pkg/service/templates.go:14
-msgid "Removed from Space"
-msgstr ""
-
-#: pkg/service/templates.go:34
-msgid "Resource shared"
-msgstr ""
-
-#: pkg/service/templates.go:39
-msgid "Resource unshared"
-msgstr ""
-
-#: pkg/service/templates.go:44
-msgid "Share expired"
-msgstr ""
-
-#: pkg/service/templates.go:24
-msgid "Space deleted"
-msgstr ""
-
-#: pkg/service/templates.go:19
-msgid "Space disabled"
-msgstr ""
-
-#: pkg/service/templates.go:9
-msgid "Space shared"
-msgstr ""
-
-#: pkg/service/templates.go:10
-msgid "{user} added you to Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:25
-msgid "{user} deleted Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:20
-msgid "{user} disabled Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:15
-msgid "{user} removed you from Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:35
-msgid "{user} shared {resource} with you"
-msgstr ""
-
-#: pkg/service/templates.go:40
-msgid "{user} unshared {resource} with you"
-msgstr ""
diff --git a/services/userlog/pkg/service/l10n/locale/gsw/LC_MESSAGES/userlog.po b/services/userlog/pkg/service/l10n/locale/gsw/LC_MESSAGES/userlog.po
deleted file mode 100644
index 2e235fe5e3d..00000000000
--- a/services/userlog/pkg/service/l10n/locale/gsw/LC_MESSAGES/userlog.po
+++ /dev/null
@@ -1,82 +0,0 @@
-# SOME DESCRIPTIVE TITLE.
-# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
-# This file is distributed under the same license as the PACKAGE package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
-# 
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: \n"
-"Report-Msgid-Bugs-To: EMAIL\n"
-"POT-Creation-Date: 2023-03-15 09:04+0000\n"
-"PO-Revision-Date: 2023-03-15 08:28+0000\n"
-"Language-Team: Swiss German (https://www.transifex.com/owncloud-org/teams/6149/gsw/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: gsw\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-
-#: pkg/service/templates.go:30
-msgid "Access to Space {space} lost"
-msgstr ""
-
-#: pkg/service/templates.go:45
-msgid "Access to {resource} expired"
-msgstr ""
-
-#: pkg/service/templates.go:29
-msgid "Membership expired"
-msgstr ""
-
-#: pkg/service/templates.go:14
-msgid "Removed from Space"
-msgstr ""
-
-#: pkg/service/templates.go:34
-msgid "Resource shared"
-msgstr ""
-
-#: pkg/service/templates.go:39
-msgid "Resource unshared"
-msgstr ""
-
-#: pkg/service/templates.go:44
-msgid "Share expired"
-msgstr ""
-
-#: pkg/service/templates.go:24
-msgid "Space deleted"
-msgstr ""
-
-#: pkg/service/templates.go:19
-msgid "Space disabled"
-msgstr ""
-
-#: pkg/service/templates.go:9
-msgid "Space shared"
-msgstr ""
-
-#: pkg/service/templates.go:10
-msgid "{user} added you to Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:25
-msgid "{user} deleted Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:20
-msgid "{user} disabled Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:15
-msgid "{user} removed you from Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:35
-msgid "{user} shared {resource} with you"
-msgstr ""
-
-#: pkg/service/templates.go:40
-msgid "{user} unshared {resource} with you"
-msgstr ""
diff --git a/services/userlog/pkg/service/l10n/locale/id_ID/LC_MESSAGES/userlog.po b/services/userlog/pkg/service/l10n/locale/id_ID/LC_MESSAGES/userlog.po
deleted file mode 100644
index 24c3bb29d06..00000000000
--- a/services/userlog/pkg/service/l10n/locale/id_ID/LC_MESSAGES/userlog.po
+++ /dev/null
@@ -1,82 +0,0 @@
-# SOME DESCRIPTIVE TITLE.
-# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
-# This file is distributed under the same license as the PACKAGE package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
-# 
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: \n"
-"Report-Msgid-Bugs-To: EMAIL\n"
-"POT-Creation-Date: 2023-03-15 09:04+0000\n"
-"PO-Revision-Date: 2023-03-15 08:28+0000\n"
-"Language-Team: Indonesian (Indonesia) (https://www.transifex.com/owncloud-org/teams/6149/id_ID/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: id_ID\n"
-"Plural-Forms: nplurals=1; plural=0;\n"
-
-#: pkg/service/templates.go:30
-msgid "Access to Space {space} lost"
-msgstr ""
-
-#: pkg/service/templates.go:45
-msgid "Access to {resource} expired"
-msgstr ""
-
-#: pkg/service/templates.go:29
-msgid "Membership expired"
-msgstr ""
-
-#: pkg/service/templates.go:14
-msgid "Removed from Space"
-msgstr ""
-
-#: pkg/service/templates.go:34
-msgid "Resource shared"
-msgstr ""
-
-#: pkg/service/templates.go:39
-msgid "Resource unshared"
-msgstr ""
-
-#: pkg/service/templates.go:44
-msgid "Share expired"
-msgstr ""
-
-#: pkg/service/templates.go:24
-msgid "Space deleted"
-msgstr ""
-
-#: pkg/service/templates.go:19
-msgid "Space disabled"
-msgstr ""
-
-#: pkg/service/templates.go:9
-msgid "Space shared"
-msgstr ""
-
-#: pkg/service/templates.go:10
-msgid "{user} added you to Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:25
-msgid "{user} deleted Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:20
-msgid "{user} disabled Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:15
-msgid "{user} removed you from Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:35
-msgid "{user} shared {resource} with you"
-msgstr ""
-
-#: pkg/service/templates.go:40
-msgid "{user} unshared {resource} with you"
-msgstr ""
diff --git a/services/userlog/pkg/service/l10n/locale/io/LC_MESSAGES/userlog.po b/services/userlog/pkg/service/l10n/locale/io/LC_MESSAGES/userlog.po
deleted file mode 100644
index fcf7b5371cd..00000000000
--- a/services/userlog/pkg/service/l10n/locale/io/LC_MESSAGES/userlog.po
+++ /dev/null
@@ -1,82 +0,0 @@
-# SOME DESCRIPTIVE TITLE.
-# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
-# This file is distributed under the same license as the PACKAGE package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
-# 
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: \n"
-"Report-Msgid-Bugs-To: EMAIL\n"
-"POT-Creation-Date: 2023-03-15 09:04+0000\n"
-"PO-Revision-Date: 2023-03-15 08:28+0000\n"
-"Language-Team: Ido (https://www.transifex.com/owncloud-org/teams/6149/io/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: io\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-
-#: pkg/service/templates.go:30
-msgid "Access to Space {space} lost"
-msgstr ""
-
-#: pkg/service/templates.go:45
-msgid "Access to {resource} expired"
-msgstr ""
-
-#: pkg/service/templates.go:29
-msgid "Membership expired"
-msgstr ""
-
-#: pkg/service/templates.go:14
-msgid "Removed from Space"
-msgstr ""
-
-#: pkg/service/templates.go:34
-msgid "Resource shared"
-msgstr ""
-
-#: pkg/service/templates.go:39
-msgid "Resource unshared"
-msgstr ""
-
-#: pkg/service/templates.go:44
-msgid "Share expired"
-msgstr ""
-
-#: pkg/service/templates.go:24
-msgid "Space deleted"
-msgstr ""
-
-#: pkg/service/templates.go:19
-msgid "Space disabled"
-msgstr ""
-
-#: pkg/service/templates.go:9
-msgid "Space shared"
-msgstr ""
-
-#: pkg/service/templates.go:10
-msgid "{user} added you to Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:25
-msgid "{user} deleted Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:20
-msgid "{user} disabled Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:15
-msgid "{user} removed you from Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:35
-msgid "{user} shared {resource} with you"
-msgstr ""
-
-#: pkg/service/templates.go:40
-msgid "{user} unshared {resource} with you"
-msgstr ""
diff --git a/services/userlog/pkg/service/l10n/locale/ja_JP/LC_MESSAGES/userlog.po b/services/userlog/pkg/service/l10n/locale/ja_JP/LC_MESSAGES/userlog.po
deleted file mode 100644
index 0c2639238b9..00000000000
--- a/services/userlog/pkg/service/l10n/locale/ja_JP/LC_MESSAGES/userlog.po
+++ /dev/null
@@ -1,82 +0,0 @@
-# SOME DESCRIPTIVE TITLE.
-# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
-# This file is distributed under the same license as the PACKAGE package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
-# 
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: \n"
-"Report-Msgid-Bugs-To: EMAIL\n"
-"POT-Creation-Date: 2023-03-15 09:04+0000\n"
-"PO-Revision-Date: 2023-03-15 08:28+0000\n"
-"Language-Team: Japanese (Japan) (https://www.transifex.com/owncloud-org/teams/6149/ja_JP/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: ja_JP\n"
-"Plural-Forms: nplurals=1; plural=0;\n"
-
-#: pkg/service/templates.go:30
-msgid "Access to Space {space} lost"
-msgstr ""
-
-#: pkg/service/templates.go:45
-msgid "Access to {resource} expired"
-msgstr ""
-
-#: pkg/service/templates.go:29
-msgid "Membership expired"
-msgstr ""
-
-#: pkg/service/templates.go:14
-msgid "Removed from Space"
-msgstr ""
-
-#: pkg/service/templates.go:34
-msgid "Resource shared"
-msgstr ""
-
-#: pkg/service/templates.go:39
-msgid "Resource unshared"
-msgstr ""
-
-#: pkg/service/templates.go:44
-msgid "Share expired"
-msgstr ""
-
-#: pkg/service/templates.go:24
-msgid "Space deleted"
-msgstr ""
-
-#: pkg/service/templates.go:19
-msgid "Space disabled"
-msgstr ""
-
-#: pkg/service/templates.go:9
-msgid "Space shared"
-msgstr ""
-
-#: pkg/service/templates.go:10
-msgid "{user} added you to Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:25
-msgid "{user} deleted Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:20
-msgid "{user} disabled Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:15
-msgid "{user} removed you from Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:35
-msgid "{user} shared {resource} with you"
-msgstr ""
-
-#: pkg/service/templates.go:40
-msgid "{user} unshared {resource} with you"
-msgstr ""
diff --git a/services/userlog/pkg/service/l10n/locale/ka_GE/LC_MESSAGES/userlog.po b/services/userlog/pkg/service/l10n/locale/ka_GE/LC_MESSAGES/userlog.po
deleted file mode 100644
index de4f6839b16..00000000000
--- a/services/userlog/pkg/service/l10n/locale/ka_GE/LC_MESSAGES/userlog.po
+++ /dev/null
@@ -1,82 +0,0 @@
-# SOME DESCRIPTIVE TITLE.
-# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
-# This file is distributed under the same license as the PACKAGE package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
-# 
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: \n"
-"Report-Msgid-Bugs-To: EMAIL\n"
-"POT-Creation-Date: 2023-03-15 09:04+0000\n"
-"PO-Revision-Date: 2023-03-15 08:28+0000\n"
-"Language-Team: Georgian (Georgia) (https://www.transifex.com/owncloud-org/teams/6149/ka_GE/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: ka_GE\n"
-"Plural-Forms: nplurals=2; plural=(n!=1);\n"
-
-#: pkg/service/templates.go:30
-msgid "Access to Space {space} lost"
-msgstr ""
-
-#: pkg/service/templates.go:45
-msgid "Access to {resource} expired"
-msgstr ""
-
-#: pkg/service/templates.go:29
-msgid "Membership expired"
-msgstr ""
-
-#: pkg/service/templates.go:14
-msgid "Removed from Space"
-msgstr ""
-
-#: pkg/service/templates.go:34
-msgid "Resource shared"
-msgstr ""
-
-#: pkg/service/templates.go:39
-msgid "Resource unshared"
-msgstr ""
-
-#: pkg/service/templates.go:44
-msgid "Share expired"
-msgstr ""
-
-#: pkg/service/templates.go:24
-msgid "Space deleted"
-msgstr ""
-
-#: pkg/service/templates.go:19
-msgid "Space disabled"
-msgstr ""
-
-#: pkg/service/templates.go:9
-msgid "Space shared"
-msgstr ""
-
-#: pkg/service/templates.go:10
-msgid "{user} added you to Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:25
-msgid "{user} deleted Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:20
-msgid "{user} disabled Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:15
-msgid "{user} removed you from Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:35
-msgid "{user} shared {resource} with you"
-msgstr ""
-
-#: pkg/service/templates.go:40
-msgid "{user} unshared {resource} with you"
-msgstr ""
diff --git a/services/userlog/pkg/service/l10n/locale/ko_KR/LC_MESSAGES/userlog.po b/services/userlog/pkg/service/l10n/locale/ko_KR/LC_MESSAGES/userlog.po
deleted file mode 100644
index 7301c880314..00000000000
--- a/services/userlog/pkg/service/l10n/locale/ko_KR/LC_MESSAGES/userlog.po
+++ /dev/null
@@ -1,82 +0,0 @@
-# SOME DESCRIPTIVE TITLE.
-# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
-# This file is distributed under the same license as the PACKAGE package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
-# 
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: \n"
-"Report-Msgid-Bugs-To: EMAIL\n"
-"POT-Creation-Date: 2023-03-15 09:04+0000\n"
-"PO-Revision-Date: 2023-03-15 08:28+0000\n"
-"Language-Team: Korean (Korea) (https://www.transifex.com/owncloud-org/teams/6149/ko_KR/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: ko_KR\n"
-"Plural-Forms: nplurals=1; plural=0;\n"
-
-#: pkg/service/templates.go:30
-msgid "Access to Space {space} lost"
-msgstr ""
-
-#: pkg/service/templates.go:45
-msgid "Access to {resource} expired"
-msgstr ""
-
-#: pkg/service/templates.go:29
-msgid "Membership expired"
-msgstr ""
-
-#: pkg/service/templates.go:14
-msgid "Removed from Space"
-msgstr ""
-
-#: pkg/service/templates.go:34
-msgid "Resource shared"
-msgstr ""
-
-#: pkg/service/templates.go:39
-msgid "Resource unshared"
-msgstr ""
-
-#: pkg/service/templates.go:44
-msgid "Share expired"
-msgstr ""
-
-#: pkg/service/templates.go:24
-msgid "Space deleted"
-msgstr ""
-
-#: pkg/service/templates.go:19
-msgid "Space disabled"
-msgstr ""
-
-#: pkg/service/templates.go:9
-msgid "Space shared"
-msgstr ""
-
-#: pkg/service/templates.go:10
-msgid "{user} added you to Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:25
-msgid "{user} deleted Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:20
-msgid "{user} disabled Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:15
-msgid "{user} removed you from Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:35
-msgid "{user} shared {resource} with you"
-msgstr ""
-
-#: pkg/service/templates.go:40
-msgid "{user} unshared {resource} with you"
-msgstr ""
diff --git a/services/userlog/pkg/service/l10n/locale/ku_IQ/LC_MESSAGES/userlog.po b/services/userlog/pkg/service/l10n/locale/ku_IQ/LC_MESSAGES/userlog.po
deleted file mode 100644
index 603da392d9b..00000000000
--- a/services/userlog/pkg/service/l10n/locale/ku_IQ/LC_MESSAGES/userlog.po
+++ /dev/null
@@ -1,82 +0,0 @@
-# SOME DESCRIPTIVE TITLE.
-# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
-# This file is distributed under the same license as the PACKAGE package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
-# 
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: \n"
-"Report-Msgid-Bugs-To: EMAIL\n"
-"POT-Creation-Date: 2023-03-15 09:04+0000\n"
-"PO-Revision-Date: 2023-03-15 08:28+0000\n"
-"Language-Team: Kurdish (Iraq) (https://www.transifex.com/owncloud-org/teams/6149/ku_IQ/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: ku_IQ\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-
-#: pkg/service/templates.go:30
-msgid "Access to Space {space} lost"
-msgstr ""
-
-#: pkg/service/templates.go:45
-msgid "Access to {resource} expired"
-msgstr ""
-
-#: pkg/service/templates.go:29
-msgid "Membership expired"
-msgstr ""
-
-#: pkg/service/templates.go:14
-msgid "Removed from Space"
-msgstr ""
-
-#: pkg/service/templates.go:34
-msgid "Resource shared"
-msgstr ""
-
-#: pkg/service/templates.go:39
-msgid "Resource unshared"
-msgstr ""
-
-#: pkg/service/templates.go:44
-msgid "Share expired"
-msgstr ""
-
-#: pkg/service/templates.go:24
-msgid "Space deleted"
-msgstr ""
-
-#: pkg/service/templates.go:19
-msgid "Space disabled"
-msgstr ""
-
-#: pkg/service/templates.go:9
-msgid "Space shared"
-msgstr ""
-
-#: pkg/service/templates.go:10
-msgid "{user} added you to Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:25
-msgid "{user} deleted Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:20
-msgid "{user} disabled Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:15
-msgid "{user} removed you from Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:35
-msgid "{user} shared {resource} with you"
-msgstr ""
-
-#: pkg/service/templates.go:40
-msgid "{user} unshared {resource} with you"
-msgstr ""
diff --git a/services/userlog/pkg/service/l10n/locale/lt_LT/LC_MESSAGES/userlog.po b/services/userlog/pkg/service/l10n/locale/lt_LT/LC_MESSAGES/userlog.po
deleted file mode 100644
index fd2bc0acfb5..00000000000
--- a/services/userlog/pkg/service/l10n/locale/lt_LT/LC_MESSAGES/userlog.po
+++ /dev/null
@@ -1,82 +0,0 @@
-# SOME DESCRIPTIVE TITLE.
-# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
-# This file is distributed under the same license as the PACKAGE package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
-# 
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: \n"
-"Report-Msgid-Bugs-To: EMAIL\n"
-"POT-Creation-Date: 2023-03-15 09:04+0000\n"
-"PO-Revision-Date: 2023-03-15 08:28+0000\n"
-"Language-Team: Lithuanian (Lithuania) (https://www.transifex.com/owncloud-org/teams/6149/lt_LT/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: lt_LT\n"
-"Plural-Forms: nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < 11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? 1 : n % 1 != 0 ? 2: 3);\n"
-
-#: pkg/service/templates.go:30
-msgid "Access to Space {space} lost"
-msgstr ""
-
-#: pkg/service/templates.go:45
-msgid "Access to {resource} expired"
-msgstr ""
-
-#: pkg/service/templates.go:29
-msgid "Membership expired"
-msgstr ""
-
-#: pkg/service/templates.go:14
-msgid "Removed from Space"
-msgstr ""
-
-#: pkg/service/templates.go:34
-msgid "Resource shared"
-msgstr ""
-
-#: pkg/service/templates.go:39
-msgid "Resource unshared"
-msgstr ""
-
-#: pkg/service/templates.go:44
-msgid "Share expired"
-msgstr ""
-
-#: pkg/service/templates.go:24
-msgid "Space deleted"
-msgstr ""
-
-#: pkg/service/templates.go:19
-msgid "Space disabled"
-msgstr ""
-
-#: pkg/service/templates.go:9
-msgid "Space shared"
-msgstr ""
-
-#: pkg/service/templates.go:10
-msgid "{user} added you to Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:25
-msgid "{user} deleted Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:20
-msgid "{user} disabled Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:15
-msgid "{user} removed you from Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:35
-msgid "{user} shared {resource} with you"
-msgstr ""
-
-#: pkg/service/templates.go:40
-msgid "{user} unshared {resource} with you"
-msgstr ""
diff --git a/services/userlog/pkg/service/l10n/locale/ml_IN/LC_MESSAGES/userlog.po b/services/userlog/pkg/service/l10n/locale/ml_IN/LC_MESSAGES/userlog.po
deleted file mode 100644
index d4cb6a5a2a3..00000000000
--- a/services/userlog/pkg/service/l10n/locale/ml_IN/LC_MESSAGES/userlog.po
+++ /dev/null
@@ -1,82 +0,0 @@
-# SOME DESCRIPTIVE TITLE.
-# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
-# This file is distributed under the same license as the PACKAGE package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
-# 
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: \n"
-"Report-Msgid-Bugs-To: EMAIL\n"
-"POT-Creation-Date: 2023-03-15 09:04+0000\n"
-"PO-Revision-Date: 2023-03-15 08:28+0000\n"
-"Language-Team: Malayalam (India) (https://www.transifex.com/owncloud-org/teams/6149/ml_IN/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: ml_IN\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-
-#: pkg/service/templates.go:30
-msgid "Access to Space {space} lost"
-msgstr ""
-
-#: pkg/service/templates.go:45
-msgid "Access to {resource} expired"
-msgstr ""
-
-#: pkg/service/templates.go:29
-msgid "Membership expired"
-msgstr ""
-
-#: pkg/service/templates.go:14
-msgid "Removed from Space"
-msgstr ""
-
-#: pkg/service/templates.go:34
-msgid "Resource shared"
-msgstr ""
-
-#: pkg/service/templates.go:39
-msgid "Resource unshared"
-msgstr ""
-
-#: pkg/service/templates.go:44
-msgid "Share expired"
-msgstr ""
-
-#: pkg/service/templates.go:24
-msgid "Space deleted"
-msgstr ""
-
-#: pkg/service/templates.go:19
-msgid "Space disabled"
-msgstr ""
-
-#: pkg/service/templates.go:9
-msgid "Space shared"
-msgstr ""
-
-#: pkg/service/templates.go:10
-msgid "{user} added you to Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:25
-msgid "{user} deleted Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:20
-msgid "{user} disabled Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:15
-msgid "{user} removed you from Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:35
-msgid "{user} shared {resource} with you"
-msgstr ""
-
-#: pkg/service/templates.go:40
-msgid "{user} unshared {resource} with you"
-msgstr ""
diff --git a/services/userlog/pkg/service/l10n/locale/ms_MY/LC_MESSAGES/userlog.po b/services/userlog/pkg/service/l10n/locale/ms_MY/LC_MESSAGES/userlog.po
deleted file mode 100644
index 77c0fde65e5..00000000000
--- a/services/userlog/pkg/service/l10n/locale/ms_MY/LC_MESSAGES/userlog.po
+++ /dev/null
@@ -1,82 +0,0 @@
-# SOME DESCRIPTIVE TITLE.
-# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
-# This file is distributed under the same license as the PACKAGE package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
-# 
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: \n"
-"Report-Msgid-Bugs-To: EMAIL\n"
-"POT-Creation-Date: 2023-03-15 09:04+0000\n"
-"PO-Revision-Date: 2023-03-15 08:28+0000\n"
-"Language-Team: Malay (Malaysia) (https://www.transifex.com/owncloud-org/teams/6149/ms_MY/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: ms_MY\n"
-"Plural-Forms: nplurals=1; plural=0;\n"
-
-#: pkg/service/templates.go:30
-msgid "Access to Space {space} lost"
-msgstr ""
-
-#: pkg/service/templates.go:45
-msgid "Access to {resource} expired"
-msgstr ""
-
-#: pkg/service/templates.go:29
-msgid "Membership expired"
-msgstr ""
-
-#: pkg/service/templates.go:14
-msgid "Removed from Space"
-msgstr ""
-
-#: pkg/service/templates.go:34
-msgid "Resource shared"
-msgstr ""
-
-#: pkg/service/templates.go:39
-msgid "Resource unshared"
-msgstr ""
-
-#: pkg/service/templates.go:44
-msgid "Share expired"
-msgstr ""
-
-#: pkg/service/templates.go:24
-msgid "Space deleted"
-msgstr ""
-
-#: pkg/service/templates.go:19
-msgid "Space disabled"
-msgstr ""
-
-#: pkg/service/templates.go:9
-msgid "Space shared"
-msgstr ""
-
-#: pkg/service/templates.go:10
-msgid "{user} added you to Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:25
-msgid "{user} deleted Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:20
-msgid "{user} disabled Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:15
-msgid "{user} removed you from Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:35
-msgid "{user} shared {resource} with you"
-msgstr ""
-
-#: pkg/service/templates.go:40
-msgid "{user} unshared {resource} with you"
-msgstr ""
diff --git a/services/userlog/pkg/service/l10n/locale/mt_MT/LC_MESSAGES/userlog.po b/services/userlog/pkg/service/l10n/locale/mt_MT/LC_MESSAGES/userlog.po
deleted file mode 100644
index 815ade9f655..00000000000
--- a/services/userlog/pkg/service/l10n/locale/mt_MT/LC_MESSAGES/userlog.po
+++ /dev/null
@@ -1,82 +0,0 @@
-# SOME DESCRIPTIVE TITLE.
-# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
-# This file is distributed under the same license as the PACKAGE package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
-# 
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: \n"
-"Report-Msgid-Bugs-To: EMAIL\n"
-"POT-Creation-Date: 2023-03-15 09:04+0000\n"
-"PO-Revision-Date: 2023-03-15 08:28+0000\n"
-"Language-Team: Maltese (Malta) (https://www.transifex.com/owncloud-org/teams/6149/mt_MT/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: mt_MT\n"
-"Plural-Forms: nplurals=4; plural=(n==1 ? 0 : n==0 || ( n%100>1 && n%100<11) ? 1 : (n%100>10 && n%100<20 ) ? 2 : 3);\n"
-
-#: pkg/service/templates.go:30
-msgid "Access to Space {space} lost"
-msgstr ""
-
-#: pkg/service/templates.go:45
-msgid "Access to {resource} expired"
-msgstr ""
-
-#: pkg/service/templates.go:29
-msgid "Membership expired"
-msgstr ""
-
-#: pkg/service/templates.go:14
-msgid "Removed from Space"
-msgstr ""
-
-#: pkg/service/templates.go:34
-msgid "Resource shared"
-msgstr ""
-
-#: pkg/service/templates.go:39
-msgid "Resource unshared"
-msgstr ""
-
-#: pkg/service/templates.go:44
-msgid "Share expired"
-msgstr ""
-
-#: pkg/service/templates.go:24
-msgid "Space deleted"
-msgstr ""
-
-#: pkg/service/templates.go:19
-msgid "Space disabled"
-msgstr ""
-
-#: pkg/service/templates.go:9
-msgid "Space shared"
-msgstr ""
-
-#: pkg/service/templates.go:10
-msgid "{user} added you to Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:25
-msgid "{user} deleted Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:20
-msgid "{user} disabled Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:15
-msgid "{user} removed you from Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:35
-msgid "{user} shared {resource} with you"
-msgstr ""
-
-#: pkg/service/templates.go:40
-msgid "{user} unshared {resource} with you"
-msgstr ""
diff --git a/services/userlog/pkg/service/l10n/locale/nb_NO/LC_MESSAGES/userlog.po b/services/userlog/pkg/service/l10n/locale/nb_NO/LC_MESSAGES/userlog.po
deleted file mode 100644
index 58dcd30f55c..00000000000
--- a/services/userlog/pkg/service/l10n/locale/nb_NO/LC_MESSAGES/userlog.po
+++ /dev/null
@@ -1,82 +0,0 @@
-# SOME DESCRIPTIVE TITLE.
-# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
-# This file is distributed under the same license as the PACKAGE package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
-# 
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: \n"
-"Report-Msgid-Bugs-To: EMAIL\n"
-"POT-Creation-Date: 2023-03-15 09:04+0000\n"
-"PO-Revision-Date: 2023-03-15 08:28+0000\n"
-"Language-Team: Norwegian Bokmål (Norway) (https://www.transifex.com/owncloud-org/teams/6149/nb_NO/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: nb_NO\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-
-#: pkg/service/templates.go:30
-msgid "Access to Space {space} lost"
-msgstr ""
-
-#: pkg/service/templates.go:45
-msgid "Access to {resource} expired"
-msgstr ""
-
-#: pkg/service/templates.go:29
-msgid "Membership expired"
-msgstr ""
-
-#: pkg/service/templates.go:14
-msgid "Removed from Space"
-msgstr ""
-
-#: pkg/service/templates.go:34
-msgid "Resource shared"
-msgstr ""
-
-#: pkg/service/templates.go:39
-msgid "Resource unshared"
-msgstr ""
-
-#: pkg/service/templates.go:44
-msgid "Share expired"
-msgstr ""
-
-#: pkg/service/templates.go:24
-msgid "Space deleted"
-msgstr ""
-
-#: pkg/service/templates.go:19
-msgid "Space disabled"
-msgstr ""
-
-#: pkg/service/templates.go:9
-msgid "Space shared"
-msgstr ""
-
-#: pkg/service/templates.go:10
-msgid "{user} added you to Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:25
-msgid "{user} deleted Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:20
-msgid "{user} disabled Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:15
-msgid "{user} removed you from Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:35
-msgid "{user} shared {resource} with you"
-msgstr ""
-
-#: pkg/service/templates.go:40
-msgid "{user} unshared {resource} with you"
-msgstr ""
diff --git a/services/userlog/pkg/service/l10n/locale/nn_NO/LC_MESSAGES/userlog.po b/services/userlog/pkg/service/l10n/locale/nn_NO/LC_MESSAGES/userlog.po
deleted file mode 100644
index 94917a10f89..00000000000
--- a/services/userlog/pkg/service/l10n/locale/nn_NO/LC_MESSAGES/userlog.po
+++ /dev/null
@@ -1,82 +0,0 @@
-# SOME DESCRIPTIVE TITLE.
-# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
-# This file is distributed under the same license as the PACKAGE package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
-# 
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: \n"
-"Report-Msgid-Bugs-To: EMAIL\n"
-"POT-Creation-Date: 2023-03-15 09:04+0000\n"
-"PO-Revision-Date: 2023-03-15 08:28+0000\n"
-"Language-Team: Norwegian Nynorsk (Norway) (https://www.transifex.com/owncloud-org/teams/6149/nn_NO/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: nn_NO\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-
-#: pkg/service/templates.go:30
-msgid "Access to Space {space} lost"
-msgstr ""
-
-#: pkg/service/templates.go:45
-msgid "Access to {resource} expired"
-msgstr ""
-
-#: pkg/service/templates.go:29
-msgid "Membership expired"
-msgstr ""
-
-#: pkg/service/templates.go:14
-msgid "Removed from Space"
-msgstr ""
-
-#: pkg/service/templates.go:34
-msgid "Resource shared"
-msgstr ""
-
-#: pkg/service/templates.go:39
-msgid "Resource unshared"
-msgstr ""
-
-#: pkg/service/templates.go:44
-msgid "Share expired"
-msgstr ""
-
-#: pkg/service/templates.go:24
-msgid "Space deleted"
-msgstr ""
-
-#: pkg/service/templates.go:19
-msgid "Space disabled"
-msgstr ""
-
-#: pkg/service/templates.go:9
-msgid "Space shared"
-msgstr ""
-
-#: pkg/service/templates.go:10
-msgid "{user} added you to Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:25
-msgid "{user} deleted Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:20
-msgid "{user} disabled Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:15
-msgid "{user} removed you from Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:35
-msgid "{user} shared {resource} with you"
-msgstr ""
-
-#: pkg/service/templates.go:40
-msgid "{user} unshared {resource} with you"
-msgstr ""
diff --git a/services/userlog/pkg/service/l10n/locale/nqo/LC_MESSAGES/userlog.po b/services/userlog/pkg/service/l10n/locale/nqo/LC_MESSAGES/userlog.po
deleted file mode 100644
index 6de08051ab9..00000000000
--- a/services/userlog/pkg/service/l10n/locale/nqo/LC_MESSAGES/userlog.po
+++ /dev/null
@@ -1,82 +0,0 @@
-# SOME DESCRIPTIVE TITLE.
-# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
-# This file is distributed under the same license as the PACKAGE package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
-# 
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: \n"
-"Report-Msgid-Bugs-To: EMAIL\n"
-"POT-Creation-Date: 2023-03-15 09:04+0000\n"
-"PO-Revision-Date: 2023-03-15 08:28+0000\n"
-"Language-Team: N'ko (https://www.transifex.com/owncloud-org/teams/6149/nqo/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: nqo\n"
-"Plural-Forms: nplurals=1; plural=0;\n"
-
-#: pkg/service/templates.go:30
-msgid "Access to Space {space} lost"
-msgstr ""
-
-#: pkg/service/templates.go:45
-msgid "Access to {resource} expired"
-msgstr ""
-
-#: pkg/service/templates.go:29
-msgid "Membership expired"
-msgstr ""
-
-#: pkg/service/templates.go:14
-msgid "Removed from Space"
-msgstr ""
-
-#: pkg/service/templates.go:34
-msgid "Resource shared"
-msgstr ""
-
-#: pkg/service/templates.go:39
-msgid "Resource unshared"
-msgstr ""
-
-#: pkg/service/templates.go:44
-msgid "Share expired"
-msgstr ""
-
-#: pkg/service/templates.go:24
-msgid "Space deleted"
-msgstr ""
-
-#: pkg/service/templates.go:19
-msgid "Space disabled"
-msgstr ""
-
-#: pkg/service/templates.go:9
-msgid "Space shared"
-msgstr ""
-
-#: pkg/service/templates.go:10
-msgid "{user} added you to Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:25
-msgid "{user} deleted Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:20
-msgid "{user} disabled Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:15
-msgid "{user} removed you from Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:35
-msgid "{user} shared {resource} with you"
-msgstr ""
-
-#: pkg/service/templates.go:40
-msgid "{user} unshared {resource} with you"
-msgstr ""
diff --git a/services/userlog/pkg/service/l10n/locale/pl_PL/LC_MESSAGES/userlog.po b/services/userlog/pkg/service/l10n/locale/pl_PL/LC_MESSAGES/userlog.po
deleted file mode 100644
index f66c08701f6..00000000000
--- a/services/userlog/pkg/service/l10n/locale/pl_PL/LC_MESSAGES/userlog.po
+++ /dev/null
@@ -1,82 +0,0 @@
-# SOME DESCRIPTIVE TITLE.
-# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
-# This file is distributed under the same license as the PACKAGE package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
-# 
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: \n"
-"Report-Msgid-Bugs-To: EMAIL\n"
-"POT-Creation-Date: 2023-03-15 09:04+0000\n"
-"PO-Revision-Date: 2023-03-15 08:28+0000\n"
-"Language-Team: Polish (Poland) (https://www.transifex.com/owncloud-org/teams/6149/pl_PL/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: pl_PL\n"
-"Plural-Forms: nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\n"
-
-#: pkg/service/templates.go:30
-msgid "Access to Space {space} lost"
-msgstr ""
-
-#: pkg/service/templates.go:45
-msgid "Access to {resource} expired"
-msgstr ""
-
-#: pkg/service/templates.go:29
-msgid "Membership expired"
-msgstr ""
-
-#: pkg/service/templates.go:14
-msgid "Removed from Space"
-msgstr ""
-
-#: pkg/service/templates.go:34
-msgid "Resource shared"
-msgstr ""
-
-#: pkg/service/templates.go:39
-msgid "Resource unshared"
-msgstr ""
-
-#: pkg/service/templates.go:44
-msgid "Share expired"
-msgstr ""
-
-#: pkg/service/templates.go:24
-msgid "Space deleted"
-msgstr ""
-
-#: pkg/service/templates.go:19
-msgid "Space disabled"
-msgstr ""
-
-#: pkg/service/templates.go:9
-msgid "Space shared"
-msgstr ""
-
-#: pkg/service/templates.go:10
-msgid "{user} added you to Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:25
-msgid "{user} deleted Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:20
-msgid "{user} disabled Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:15
-msgid "{user} removed you from Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:35
-msgid "{user} shared {resource} with you"
-msgstr ""
-
-#: pkg/service/templates.go:40
-msgid "{user} unshared {resource} with you"
-msgstr ""
diff --git a/services/userlog/pkg/service/l10n/locale/pt_PT/LC_MESSAGES/userlog.po b/services/userlog/pkg/service/l10n/locale/pt_PT/LC_MESSAGES/userlog.po
deleted file mode 100644
index 879b88380c9..00000000000
--- a/services/userlog/pkg/service/l10n/locale/pt_PT/LC_MESSAGES/userlog.po
+++ /dev/null
@@ -1,82 +0,0 @@
-# SOME DESCRIPTIVE TITLE.
-# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
-# This file is distributed under the same license as the PACKAGE package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
-# 
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: \n"
-"Report-Msgid-Bugs-To: EMAIL\n"
-"POT-Creation-Date: 2023-03-15 09:04+0000\n"
-"PO-Revision-Date: 2023-03-15 08:28+0000\n"
-"Language-Team: Portuguese (Portugal) (https://www.transifex.com/owncloud-org/teams/6149/pt_PT/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: pt_PT\n"
-"Plural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"
-
-#: pkg/service/templates.go:30
-msgid "Access to Space {space} lost"
-msgstr ""
-
-#: pkg/service/templates.go:45
-msgid "Access to {resource} expired"
-msgstr ""
-
-#: pkg/service/templates.go:29
-msgid "Membership expired"
-msgstr ""
-
-#: pkg/service/templates.go:14
-msgid "Removed from Space"
-msgstr ""
-
-#: pkg/service/templates.go:34
-msgid "Resource shared"
-msgstr ""
-
-#: pkg/service/templates.go:39
-msgid "Resource unshared"
-msgstr ""
-
-#: pkg/service/templates.go:44
-msgid "Share expired"
-msgstr ""
-
-#: pkg/service/templates.go:24
-msgid "Space deleted"
-msgstr ""
-
-#: pkg/service/templates.go:19
-msgid "Space disabled"
-msgstr ""
-
-#: pkg/service/templates.go:9
-msgid "Space shared"
-msgstr ""
-
-#: pkg/service/templates.go:10
-msgid "{user} added you to Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:25
-msgid "{user} deleted Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:20
-msgid "{user} disabled Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:15
-msgid "{user} removed you from Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:35
-msgid "{user} shared {resource} with you"
-msgstr ""
-
-#: pkg/service/templates.go:40
-msgid "{user} unshared {resource} with you"
-msgstr ""
diff --git a/services/userlog/pkg/service/l10n/locale/ru_UA/LC_MESSAGES/userlog.po b/services/userlog/pkg/service/l10n/locale/ru_UA/LC_MESSAGES/userlog.po
deleted file mode 100644
index e370cd225ce..00000000000
--- a/services/userlog/pkg/service/l10n/locale/ru_UA/LC_MESSAGES/userlog.po
+++ /dev/null
@@ -1,82 +0,0 @@
-# SOME DESCRIPTIVE TITLE.
-# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
-# This file is distributed under the same license as the PACKAGE package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
-# 
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: \n"
-"Report-Msgid-Bugs-To: EMAIL\n"
-"POT-Creation-Date: 2023-03-15 09:04+0000\n"
-"PO-Revision-Date: 2023-03-15 08:28+0000\n"
-"Language-Team: Russian (Ukraine) (https://www.transifex.com/owncloud-org/teams/6149/ru_UA/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: ru_UA\n"
-"Plural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\n"
-
-#: pkg/service/templates.go:30
-msgid "Access to Space {space} lost"
-msgstr ""
-
-#: pkg/service/templates.go:45
-msgid "Access to {resource} expired"
-msgstr ""
-
-#: pkg/service/templates.go:29
-msgid "Membership expired"
-msgstr ""
-
-#: pkg/service/templates.go:14
-msgid "Removed from Space"
-msgstr ""
-
-#: pkg/service/templates.go:34
-msgid "Resource shared"
-msgstr ""
-
-#: pkg/service/templates.go:39
-msgid "Resource unshared"
-msgstr ""
-
-#: pkg/service/templates.go:44
-msgid "Share expired"
-msgstr ""
-
-#: pkg/service/templates.go:24
-msgid "Space deleted"
-msgstr ""
-
-#: pkg/service/templates.go:19
-msgid "Space disabled"
-msgstr ""
-
-#: pkg/service/templates.go:9
-msgid "Space shared"
-msgstr ""
-
-#: pkg/service/templates.go:10
-msgid "{user} added you to Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:25
-msgid "{user} deleted Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:20
-msgid "{user} disabled Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:15
-msgid "{user} removed you from Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:35
-msgid "{user} shared {resource} with you"
-msgstr ""
-
-#: pkg/service/templates.go:40
-msgid "{user} unshared {resource} with you"
-msgstr ""
diff --git a/services/userlog/pkg/service/l10n/locale/si_LK/LC_MESSAGES/userlog.po b/services/userlog/pkg/service/l10n/locale/si_LK/LC_MESSAGES/userlog.po
deleted file mode 100644
index 18d1a4947f8..00000000000
--- a/services/userlog/pkg/service/l10n/locale/si_LK/LC_MESSAGES/userlog.po
+++ /dev/null
@@ -1,82 +0,0 @@
-# SOME DESCRIPTIVE TITLE.
-# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
-# This file is distributed under the same license as the PACKAGE package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
-# 
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: \n"
-"Report-Msgid-Bugs-To: EMAIL\n"
-"POT-Creation-Date: 2023-03-15 09:04+0000\n"
-"PO-Revision-Date: 2023-03-15 08:28+0000\n"
-"Language-Team: Sinhala (Sri Lanka) (https://www.transifex.com/owncloud-org/teams/6149/si_LK/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: si_LK\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-
-#: pkg/service/templates.go:30
-msgid "Access to Space {space} lost"
-msgstr ""
-
-#: pkg/service/templates.go:45
-msgid "Access to {resource} expired"
-msgstr ""
-
-#: pkg/service/templates.go:29
-msgid "Membership expired"
-msgstr ""
-
-#: pkg/service/templates.go:14
-msgid "Removed from Space"
-msgstr ""
-
-#: pkg/service/templates.go:34
-msgid "Resource shared"
-msgstr ""
-
-#: pkg/service/templates.go:39
-msgid "Resource unshared"
-msgstr ""
-
-#: pkg/service/templates.go:44
-msgid "Share expired"
-msgstr ""
-
-#: pkg/service/templates.go:24
-msgid "Space deleted"
-msgstr ""
-
-#: pkg/service/templates.go:19
-msgid "Space disabled"
-msgstr ""
-
-#: pkg/service/templates.go:9
-msgid "Space shared"
-msgstr ""
-
-#: pkg/service/templates.go:10
-msgid "{user} added you to Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:25
-msgid "{user} deleted Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:20
-msgid "{user} disabled Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:15
-msgid "{user} removed you from Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:35
-msgid "{user} shared {resource} with you"
-msgstr ""
-
-#: pkg/service/templates.go:40
-msgid "{user} unshared {resource} with you"
-msgstr ""
diff --git a/services/userlog/pkg/service/l10n/locale/sk_SK/LC_MESSAGES/userlog.po b/services/userlog/pkg/service/l10n/locale/sk_SK/LC_MESSAGES/userlog.po
deleted file mode 100644
index 8fac024e6e6..00000000000
--- a/services/userlog/pkg/service/l10n/locale/sk_SK/LC_MESSAGES/userlog.po
+++ /dev/null
@@ -1,82 +0,0 @@
-# SOME DESCRIPTIVE TITLE.
-# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
-# This file is distributed under the same license as the PACKAGE package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
-# 
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: \n"
-"Report-Msgid-Bugs-To: EMAIL\n"
-"POT-Creation-Date: 2023-03-15 09:04+0000\n"
-"PO-Revision-Date: 2023-03-15 08:28+0000\n"
-"Language-Team: Slovak (Slovakia) (https://www.transifex.com/owncloud-org/teams/6149/sk_SK/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: sk_SK\n"
-"Plural-Forms: nplurals=4; plural=(n % 1 == 0 && n == 1 ? 0 : n % 1 == 0 && n >= 2 && n <= 4 ? 1 : n % 1 != 0 ? 2: 3);\n"
-
-#: pkg/service/templates.go:30
-msgid "Access to Space {space} lost"
-msgstr ""
-
-#: pkg/service/templates.go:45
-msgid "Access to {resource} expired"
-msgstr ""
-
-#: pkg/service/templates.go:29
-msgid "Membership expired"
-msgstr ""
-
-#: pkg/service/templates.go:14
-msgid "Removed from Space"
-msgstr ""
-
-#: pkg/service/templates.go:34
-msgid "Resource shared"
-msgstr ""
-
-#: pkg/service/templates.go:39
-msgid "Resource unshared"
-msgstr ""
-
-#: pkg/service/templates.go:44
-msgid "Share expired"
-msgstr ""
-
-#: pkg/service/templates.go:24
-msgid "Space deleted"
-msgstr ""
-
-#: pkg/service/templates.go:19
-msgid "Space disabled"
-msgstr ""
-
-#: pkg/service/templates.go:9
-msgid "Space shared"
-msgstr ""
-
-#: pkg/service/templates.go:10
-msgid "{user} added you to Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:25
-msgid "{user} deleted Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:20
-msgid "{user} disabled Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:15
-msgid "{user} removed you from Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:35
-msgid "{user} shared {resource} with you"
-msgstr ""
-
-#: pkg/service/templates.go:40
-msgid "{user} unshared {resource} with you"
-msgstr ""
diff --git a/services/userlog/pkg/service/l10n/locale/sl_SI/LC_MESSAGES/userlog.po b/services/userlog/pkg/service/l10n/locale/sl_SI/LC_MESSAGES/userlog.po
deleted file mode 100644
index 85bbe20f3d1..00000000000
--- a/services/userlog/pkg/service/l10n/locale/sl_SI/LC_MESSAGES/userlog.po
+++ /dev/null
@@ -1,82 +0,0 @@
-# SOME DESCRIPTIVE TITLE.
-# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
-# This file is distributed under the same license as the PACKAGE package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
-# 
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: \n"
-"Report-Msgid-Bugs-To: EMAIL\n"
-"POT-Creation-Date: 2023-03-15 09:04+0000\n"
-"PO-Revision-Date: 2023-03-15 08:28+0000\n"
-"Language-Team: Slovenian (Slovenia) (https://www.transifex.com/owncloud-org/teams/6149/sl_SI/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: sl_SI\n"
-"Plural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\n"
-
-#: pkg/service/templates.go:30
-msgid "Access to Space {space} lost"
-msgstr ""
-
-#: pkg/service/templates.go:45
-msgid "Access to {resource} expired"
-msgstr ""
-
-#: pkg/service/templates.go:29
-msgid "Membership expired"
-msgstr ""
-
-#: pkg/service/templates.go:14
-msgid "Removed from Space"
-msgstr ""
-
-#: pkg/service/templates.go:34
-msgid "Resource shared"
-msgstr ""
-
-#: pkg/service/templates.go:39
-msgid "Resource unshared"
-msgstr ""
-
-#: pkg/service/templates.go:44
-msgid "Share expired"
-msgstr ""
-
-#: pkg/service/templates.go:24
-msgid "Space deleted"
-msgstr ""
-
-#: pkg/service/templates.go:19
-msgid "Space disabled"
-msgstr ""
-
-#: pkg/service/templates.go:9
-msgid "Space shared"
-msgstr ""
-
-#: pkg/service/templates.go:10
-msgid "{user} added you to Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:25
-msgid "{user} deleted Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:20
-msgid "{user} disabled Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:15
-msgid "{user} removed you from Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:35
-msgid "{user} shared {resource} with you"
-msgstr ""
-
-#: pkg/service/templates.go:40
-msgid "{user} unshared {resource} with you"
-msgstr ""
diff --git a/services/userlog/pkg/service/l10n/locale/sr@Cyrl/LC_MESSAGES/userlog.po b/services/userlog/pkg/service/l10n/locale/sr@Cyrl/LC_MESSAGES/userlog.po
deleted file mode 100644
index 3ce81936334..00000000000
--- a/services/userlog/pkg/service/l10n/locale/sr@Cyrl/LC_MESSAGES/userlog.po
+++ /dev/null
@@ -1,82 +0,0 @@
-# SOME DESCRIPTIVE TITLE.
-# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
-# This file is distributed under the same license as the PACKAGE package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
-# 
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: \n"
-"Report-Msgid-Bugs-To: EMAIL\n"
-"POT-Creation-Date: 2023-03-15 09:04+0000\n"
-"PO-Revision-Date: 2023-03-15 08:28+0000\n"
-"Language-Team: Serbian (Cyrillic) (https://www.transifex.com/owncloud-org/teams/6149/sr@Cyrl/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: sr@Cyrl\n"
-"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
-
-#: pkg/service/templates.go:30
-msgid "Access to Space {space} lost"
-msgstr ""
-
-#: pkg/service/templates.go:45
-msgid "Access to {resource} expired"
-msgstr ""
-
-#: pkg/service/templates.go:29
-msgid "Membership expired"
-msgstr ""
-
-#: pkg/service/templates.go:14
-msgid "Removed from Space"
-msgstr ""
-
-#: pkg/service/templates.go:34
-msgid "Resource shared"
-msgstr ""
-
-#: pkg/service/templates.go:39
-msgid "Resource unshared"
-msgstr ""
-
-#: pkg/service/templates.go:44
-msgid "Share expired"
-msgstr ""
-
-#: pkg/service/templates.go:24
-msgid "Space deleted"
-msgstr ""
-
-#: pkg/service/templates.go:19
-msgid "Space disabled"
-msgstr ""
-
-#: pkg/service/templates.go:9
-msgid "Space shared"
-msgstr ""
-
-#: pkg/service/templates.go:10
-msgid "{user} added you to Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:25
-msgid "{user} deleted Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:20
-msgid "{user} disabled Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:15
-msgid "{user} removed you from Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:35
-msgid "{user} shared {resource} with you"
-msgstr ""
-
-#: pkg/service/templates.go:40
-msgid "{user} unshared {resource} with you"
-msgstr ""
diff --git a/services/userlog/pkg/service/l10n/locale/sv_SE/LC_MESSAGES/userlog.po b/services/userlog/pkg/service/l10n/locale/sv_SE/LC_MESSAGES/userlog.po
deleted file mode 100644
index 89294952132..00000000000
--- a/services/userlog/pkg/service/l10n/locale/sv_SE/LC_MESSAGES/userlog.po
+++ /dev/null
@@ -1,82 +0,0 @@
-# SOME DESCRIPTIVE TITLE.
-# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
-# This file is distributed under the same license as the PACKAGE package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
-# 
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: \n"
-"Report-Msgid-Bugs-To: EMAIL\n"
-"POT-Creation-Date: 2023-03-15 09:04+0000\n"
-"PO-Revision-Date: 2023-03-15 08:28+0000\n"
-"Language-Team: Swedish (Sweden) (https://www.transifex.com/owncloud-org/teams/6149/sv_SE/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: sv_SE\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-
-#: pkg/service/templates.go:30
-msgid "Access to Space {space} lost"
-msgstr ""
-
-#: pkg/service/templates.go:45
-msgid "Access to {resource} expired"
-msgstr ""
-
-#: pkg/service/templates.go:29
-msgid "Membership expired"
-msgstr ""
-
-#: pkg/service/templates.go:14
-msgid "Removed from Space"
-msgstr ""
-
-#: pkg/service/templates.go:34
-msgid "Resource shared"
-msgstr ""
-
-#: pkg/service/templates.go:39
-msgid "Resource unshared"
-msgstr ""
-
-#: pkg/service/templates.go:44
-msgid "Share expired"
-msgstr ""
-
-#: pkg/service/templates.go:24
-msgid "Space deleted"
-msgstr ""
-
-#: pkg/service/templates.go:19
-msgid "Space disabled"
-msgstr ""
-
-#: pkg/service/templates.go:9
-msgid "Space shared"
-msgstr ""
-
-#: pkg/service/templates.go:10
-msgid "{user} added you to Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:25
-msgid "{user} deleted Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:20
-msgid "{user} disabled Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:15
-msgid "{user} removed you from Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:35
-msgid "{user} shared {resource} with you"
-msgstr ""
-
-#: pkg/service/templates.go:40
-msgid "{user} unshared {resource} with you"
-msgstr ""
diff --git a/services/userlog/pkg/service/l10n/locale/sw_KE/LC_MESSAGES/userlog.po b/services/userlog/pkg/service/l10n/locale/sw_KE/LC_MESSAGES/userlog.po
deleted file mode 100644
index 0e6627ba071..00000000000
--- a/services/userlog/pkg/service/l10n/locale/sw_KE/LC_MESSAGES/userlog.po
+++ /dev/null
@@ -1,82 +0,0 @@
-# SOME DESCRIPTIVE TITLE.
-# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
-# This file is distributed under the same license as the PACKAGE package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
-# 
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: \n"
-"Report-Msgid-Bugs-To: EMAIL\n"
-"POT-Creation-Date: 2023-03-15 09:04+0000\n"
-"PO-Revision-Date: 2023-03-15 08:28+0000\n"
-"Language-Team: Swahili (Kenya) (https://www.transifex.com/owncloud-org/teams/6149/sw_KE/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: sw_KE\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-
-#: pkg/service/templates.go:30
-msgid "Access to Space {space} lost"
-msgstr ""
-
-#: pkg/service/templates.go:45
-msgid "Access to {resource} expired"
-msgstr ""
-
-#: pkg/service/templates.go:29
-msgid "Membership expired"
-msgstr ""
-
-#: pkg/service/templates.go:14
-msgid "Removed from Space"
-msgstr ""
-
-#: pkg/service/templates.go:34
-msgid "Resource shared"
-msgstr ""
-
-#: pkg/service/templates.go:39
-msgid "Resource unshared"
-msgstr ""
-
-#: pkg/service/templates.go:44
-msgid "Share expired"
-msgstr ""
-
-#: pkg/service/templates.go:24
-msgid "Space deleted"
-msgstr ""
-
-#: pkg/service/templates.go:19
-msgid "Space disabled"
-msgstr ""
-
-#: pkg/service/templates.go:9
-msgid "Space shared"
-msgstr ""
-
-#: pkg/service/templates.go:10
-msgid "{user} added you to Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:25
-msgid "{user} deleted Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:20
-msgid "{user} disabled Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:15
-msgid "{user} removed you from Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:35
-msgid "{user} shared {resource} with you"
-msgstr ""
-
-#: pkg/service/templates.go:40
-msgid "{user} unshared {resource} with you"
-msgstr ""
diff --git a/services/userlog/pkg/service/l10n/locale/tg_TJ/LC_MESSAGES/userlog.po b/services/userlog/pkg/service/l10n/locale/tg_TJ/LC_MESSAGES/userlog.po
deleted file mode 100644
index 227d832d323..00000000000
--- a/services/userlog/pkg/service/l10n/locale/tg_TJ/LC_MESSAGES/userlog.po
+++ /dev/null
@@ -1,82 +0,0 @@
-# SOME DESCRIPTIVE TITLE.
-# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
-# This file is distributed under the same license as the PACKAGE package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
-# 
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: \n"
-"Report-Msgid-Bugs-To: EMAIL\n"
-"POT-Creation-Date: 2023-03-15 09:04+0000\n"
-"PO-Revision-Date: 2023-03-15 08:28+0000\n"
-"Language-Team: Tajik (Tajikistan) (https://www.transifex.com/owncloud-org/teams/6149/tg_TJ/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: tg_TJ\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-
-#: pkg/service/templates.go:30
-msgid "Access to Space {space} lost"
-msgstr ""
-
-#: pkg/service/templates.go:45
-msgid "Access to {resource} expired"
-msgstr ""
-
-#: pkg/service/templates.go:29
-msgid "Membership expired"
-msgstr ""
-
-#: pkg/service/templates.go:14
-msgid "Removed from Space"
-msgstr ""
-
-#: pkg/service/templates.go:34
-msgid "Resource shared"
-msgstr ""
-
-#: pkg/service/templates.go:39
-msgid "Resource unshared"
-msgstr ""
-
-#: pkg/service/templates.go:44
-msgid "Share expired"
-msgstr ""
-
-#: pkg/service/templates.go:24
-msgid "Space deleted"
-msgstr ""
-
-#: pkg/service/templates.go:19
-msgid "Space disabled"
-msgstr ""
-
-#: pkg/service/templates.go:9
-msgid "Space shared"
-msgstr ""
-
-#: pkg/service/templates.go:10
-msgid "{user} added you to Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:25
-msgid "{user} deleted Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:20
-msgid "{user} disabled Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:15
-msgid "{user} removed you from Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:35
-msgid "{user} shared {resource} with you"
-msgstr ""
-
-#: pkg/service/templates.go:40
-msgid "{user} unshared {resource} with you"
-msgstr ""
diff --git a/services/userlog/pkg/service/l10n/locale/th_TH/LC_MESSAGES/userlog.po b/services/userlog/pkg/service/l10n/locale/th_TH/LC_MESSAGES/userlog.po
deleted file mode 100644
index 1bf639d54b3..00000000000
--- a/services/userlog/pkg/service/l10n/locale/th_TH/LC_MESSAGES/userlog.po
+++ /dev/null
@@ -1,82 +0,0 @@
-# SOME DESCRIPTIVE TITLE.
-# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
-# This file is distributed under the same license as the PACKAGE package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
-# 
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: \n"
-"Report-Msgid-Bugs-To: EMAIL\n"
-"POT-Creation-Date: 2023-03-15 09:04+0000\n"
-"PO-Revision-Date: 2023-03-15 08:28+0000\n"
-"Language-Team: Thai (Thailand) (https://www.transifex.com/owncloud-org/teams/6149/th_TH/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: th_TH\n"
-"Plural-Forms: nplurals=1; plural=0;\n"
-
-#: pkg/service/templates.go:30
-msgid "Access to Space {space} lost"
-msgstr ""
-
-#: pkg/service/templates.go:45
-msgid "Access to {resource} expired"
-msgstr ""
-
-#: pkg/service/templates.go:29
-msgid "Membership expired"
-msgstr ""
-
-#: pkg/service/templates.go:14
-msgid "Removed from Space"
-msgstr ""
-
-#: pkg/service/templates.go:34
-msgid "Resource shared"
-msgstr ""
-
-#: pkg/service/templates.go:39
-msgid "Resource unshared"
-msgstr ""
-
-#: pkg/service/templates.go:44
-msgid "Share expired"
-msgstr ""
-
-#: pkg/service/templates.go:24
-msgid "Space deleted"
-msgstr ""
-
-#: pkg/service/templates.go:19
-msgid "Space disabled"
-msgstr ""
-
-#: pkg/service/templates.go:9
-msgid "Space shared"
-msgstr ""
-
-#: pkg/service/templates.go:10
-msgid "{user} added you to Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:25
-msgid "{user} deleted Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:20
-msgid "{user} disabled Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:15
-msgid "{user} removed you from Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:35
-msgid "{user} shared {resource} with you"
-msgstr ""
-
-#: pkg/service/templates.go:40
-msgid "{user} unshared {resource} with you"
-msgstr ""
diff --git a/services/userlog/pkg/service/l10n/locale/tl_PH/LC_MESSAGES/userlog.po b/services/userlog/pkg/service/l10n/locale/tl_PH/LC_MESSAGES/userlog.po
deleted file mode 100644
index 948e3a60d93..00000000000
--- a/services/userlog/pkg/service/l10n/locale/tl_PH/LC_MESSAGES/userlog.po
+++ /dev/null
@@ -1,82 +0,0 @@
-# SOME DESCRIPTIVE TITLE.
-# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
-# This file is distributed under the same license as the PACKAGE package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
-# 
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: \n"
-"Report-Msgid-Bugs-To: EMAIL\n"
-"POT-Creation-Date: 2023-03-15 09:04+0000\n"
-"PO-Revision-Date: 2023-03-15 08:28+0000\n"
-"Language-Team: Tagalog (Philippines) (https://www.transifex.com/owncloud-org/teams/6149/tl_PH/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: tl_PH\n"
-"Plural-Forms: nplurals=2; plural=(n > 1);\n"
-
-#: pkg/service/templates.go:30
-msgid "Access to Space {space} lost"
-msgstr ""
-
-#: pkg/service/templates.go:45
-msgid "Access to {resource} expired"
-msgstr ""
-
-#: pkg/service/templates.go:29
-msgid "Membership expired"
-msgstr ""
-
-#: pkg/service/templates.go:14
-msgid "Removed from Space"
-msgstr ""
-
-#: pkg/service/templates.go:34
-msgid "Resource shared"
-msgstr ""
-
-#: pkg/service/templates.go:39
-msgid "Resource unshared"
-msgstr ""
-
-#: pkg/service/templates.go:44
-msgid "Share expired"
-msgstr ""
-
-#: pkg/service/templates.go:24
-msgid "Space deleted"
-msgstr ""
-
-#: pkg/service/templates.go:19
-msgid "Space disabled"
-msgstr ""
-
-#: pkg/service/templates.go:9
-msgid "Space shared"
-msgstr ""
-
-#: pkg/service/templates.go:10
-msgid "{user} added you to Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:25
-msgid "{user} deleted Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:20
-msgid "{user} disabled Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:15
-msgid "{user} removed you from Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:35
-msgid "{user} shared {resource} with you"
-msgstr ""
-
-#: pkg/service/templates.go:40
-msgid "{user} unshared {resource} with you"
-msgstr ""
diff --git a/services/userlog/pkg/service/l10n/locale/tr_TR/LC_MESSAGES/userlog.po b/services/userlog/pkg/service/l10n/locale/tr_TR/LC_MESSAGES/userlog.po
deleted file mode 100644
index e675e496737..00000000000
--- a/services/userlog/pkg/service/l10n/locale/tr_TR/LC_MESSAGES/userlog.po
+++ /dev/null
@@ -1,82 +0,0 @@
-# SOME DESCRIPTIVE TITLE.
-# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
-# This file is distributed under the same license as the PACKAGE package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
-# 
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: \n"
-"Report-Msgid-Bugs-To: EMAIL\n"
-"POT-Creation-Date: 2023-03-15 09:04+0000\n"
-"PO-Revision-Date: 2023-03-15 08:28+0000\n"
-"Language-Team: Turkish (Turkey) (https://www.transifex.com/owncloud-org/teams/6149/tr_TR/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: tr_TR\n"
-"Plural-Forms: nplurals=2; plural=(n > 1);\n"
-
-#: pkg/service/templates.go:30
-msgid "Access to Space {space} lost"
-msgstr ""
-
-#: pkg/service/templates.go:45
-msgid "Access to {resource} expired"
-msgstr ""
-
-#: pkg/service/templates.go:29
-msgid "Membership expired"
-msgstr ""
-
-#: pkg/service/templates.go:14
-msgid "Removed from Space"
-msgstr ""
-
-#: pkg/service/templates.go:34
-msgid "Resource shared"
-msgstr ""
-
-#: pkg/service/templates.go:39
-msgid "Resource unshared"
-msgstr ""
-
-#: pkg/service/templates.go:44
-msgid "Share expired"
-msgstr ""
-
-#: pkg/service/templates.go:24
-msgid "Space deleted"
-msgstr ""
-
-#: pkg/service/templates.go:19
-msgid "Space disabled"
-msgstr ""
-
-#: pkg/service/templates.go:9
-msgid "Space shared"
-msgstr ""
-
-#: pkg/service/templates.go:10
-msgid "{user} added you to Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:25
-msgid "{user} deleted Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:20
-msgid "{user} disabled Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:15
-msgid "{user} removed you from Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:35
-msgid "{user} shared {resource} with you"
-msgstr ""
-
-#: pkg/service/templates.go:40
-msgid "{user} unshared {resource} with you"
-msgstr ""
diff --git a/services/userlog/pkg/service/l10n/locale/tzm/LC_MESSAGES/userlog.po b/services/userlog/pkg/service/l10n/locale/tzm/LC_MESSAGES/userlog.po
deleted file mode 100644
index 5368090f819..00000000000
--- a/services/userlog/pkg/service/l10n/locale/tzm/LC_MESSAGES/userlog.po
+++ /dev/null
@@ -1,82 +0,0 @@
-# SOME DESCRIPTIVE TITLE.
-# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
-# This file is distributed under the same license as the PACKAGE package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
-# 
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: \n"
-"Report-Msgid-Bugs-To: EMAIL\n"
-"POT-Creation-Date: 2023-03-15 09:04+0000\n"
-"PO-Revision-Date: 2023-03-15 08:28+0000\n"
-"Language-Team: Central Atlas Tamazight (https://www.transifex.com/owncloud-org/teams/6149/tzm/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: tzm\n"
-"Plural-Forms: nplurals=2; plural=(n == 0 || n == 1 || (n > 10 && n < 100) ? 0 : 1;\n"
-
-#: pkg/service/templates.go:30
-msgid "Access to Space {space} lost"
-msgstr ""
-
-#: pkg/service/templates.go:45
-msgid "Access to {resource} expired"
-msgstr ""
-
-#: pkg/service/templates.go:29
-msgid "Membership expired"
-msgstr ""
-
-#: pkg/service/templates.go:14
-msgid "Removed from Space"
-msgstr ""
-
-#: pkg/service/templates.go:34
-msgid "Resource shared"
-msgstr ""
-
-#: pkg/service/templates.go:39
-msgid "Resource unshared"
-msgstr ""
-
-#: pkg/service/templates.go:44
-msgid "Share expired"
-msgstr ""
-
-#: pkg/service/templates.go:24
-msgid "Space deleted"
-msgstr ""
-
-#: pkg/service/templates.go:19
-msgid "Space disabled"
-msgstr ""
-
-#: pkg/service/templates.go:9
-msgid "Space shared"
-msgstr ""
-
-#: pkg/service/templates.go:10
-msgid "{user} added you to Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:25
-msgid "{user} deleted Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:20
-msgid "{user} disabled Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:15
-msgid "{user} removed you from Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:35
-msgid "{user} shared {resource} with you"
-msgstr ""
-
-#: pkg/service/templates.go:40
-msgid "{user} unshared {resource} with you"
-msgstr ""
diff --git a/services/userlog/pkg/service/l10n/locale/ur_PK/LC_MESSAGES/userlog.po b/services/userlog/pkg/service/l10n/locale/ur_PK/LC_MESSAGES/userlog.po
deleted file mode 100644
index f3f8918f1ee..00000000000
--- a/services/userlog/pkg/service/l10n/locale/ur_PK/LC_MESSAGES/userlog.po
+++ /dev/null
@@ -1,82 +0,0 @@
-# SOME DESCRIPTIVE TITLE.
-# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
-# This file is distributed under the same license as the PACKAGE package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
-# 
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: \n"
-"Report-Msgid-Bugs-To: EMAIL\n"
-"POT-Creation-Date: 2023-03-15 09:04+0000\n"
-"PO-Revision-Date: 2023-03-15 08:28+0000\n"
-"Language-Team: Urdu (Pakistan) (https://www.transifex.com/owncloud-org/teams/6149/ur_PK/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: ur_PK\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-
-#: pkg/service/templates.go:30
-msgid "Access to Space {space} lost"
-msgstr ""
-
-#: pkg/service/templates.go:45
-msgid "Access to {resource} expired"
-msgstr ""
-
-#: pkg/service/templates.go:29
-msgid "Membership expired"
-msgstr ""
-
-#: pkg/service/templates.go:14
-msgid "Removed from Space"
-msgstr ""
-
-#: pkg/service/templates.go:34
-msgid "Resource shared"
-msgstr ""
-
-#: pkg/service/templates.go:39
-msgid "Resource unshared"
-msgstr ""
-
-#: pkg/service/templates.go:44
-msgid "Share expired"
-msgstr ""
-
-#: pkg/service/templates.go:24
-msgid "Space deleted"
-msgstr ""
-
-#: pkg/service/templates.go:19
-msgid "Space disabled"
-msgstr ""
-
-#: pkg/service/templates.go:9
-msgid "Space shared"
-msgstr ""
-
-#: pkg/service/templates.go:10
-msgid "{user} added you to Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:25
-msgid "{user} deleted Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:20
-msgid "{user} disabled Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:15
-msgid "{user} removed you from Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:35
-msgid "{user} shared {resource} with you"
-msgstr ""
-
-#: pkg/service/templates.go:40
-msgid "{user} unshared {resource} with you"
-msgstr ""
diff --git a/services/userlog/pkg/service/l10n/locale/yue_CN/LC_MESSAGES/userlog.po b/services/userlog/pkg/service/l10n/locale/yue_CN/LC_MESSAGES/userlog.po
deleted file mode 100644
index b78d3e2e8c9..00000000000
--- a/services/userlog/pkg/service/l10n/locale/yue_CN/LC_MESSAGES/userlog.po
+++ /dev/null
@@ -1,82 +0,0 @@
-# SOME DESCRIPTIVE TITLE.
-# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
-# This file is distributed under the same license as the PACKAGE package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
-# 
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: \n"
-"Report-Msgid-Bugs-To: EMAIL\n"
-"POT-Creation-Date: 2023-03-15 09:04+0000\n"
-"PO-Revision-Date: 2023-03-15 08:28+0000\n"
-"Language-Team: Cantonese (China) (https://www.transifex.com/owncloud-org/teams/6149/yue_CN/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: yue_CN\n"
-"Plural-Forms: nplurals=1; plural=0;\n"
-
-#: pkg/service/templates.go:30
-msgid "Access to Space {space} lost"
-msgstr ""
-
-#: pkg/service/templates.go:45
-msgid "Access to {resource} expired"
-msgstr ""
-
-#: pkg/service/templates.go:29
-msgid "Membership expired"
-msgstr ""
-
-#: pkg/service/templates.go:14
-msgid "Removed from Space"
-msgstr ""
-
-#: pkg/service/templates.go:34
-msgid "Resource shared"
-msgstr ""
-
-#: pkg/service/templates.go:39
-msgid "Resource unshared"
-msgstr ""
-
-#: pkg/service/templates.go:44
-msgid "Share expired"
-msgstr ""
-
-#: pkg/service/templates.go:24
-msgid "Space deleted"
-msgstr ""
-
-#: pkg/service/templates.go:19
-msgid "Space disabled"
-msgstr ""
-
-#: pkg/service/templates.go:9
-msgid "Space shared"
-msgstr ""
-
-#: pkg/service/templates.go:10
-msgid "{user} added you to Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:25
-msgid "{user} deleted Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:20
-msgid "{user} disabled Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:15
-msgid "{user} removed you from Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:35
-msgid "{user} shared {resource} with you"
-msgstr ""
-
-#: pkg/service/templates.go:40
-msgid "{user} unshared {resource} with you"
-msgstr ""
diff --git a/services/userlog/pkg/service/l10n/locale/zh-Hans/LC_MESSAGES/userlog.po b/services/userlog/pkg/service/l10n/locale/zh-Hans/LC_MESSAGES/userlog.po
deleted file mode 100644
index c5856cea6b8..00000000000
--- a/services/userlog/pkg/service/l10n/locale/zh-Hans/LC_MESSAGES/userlog.po
+++ /dev/null
@@ -1,82 +0,0 @@
-# SOME DESCRIPTIVE TITLE.
-# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
-# This file is distributed under the same license as the PACKAGE package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
-# 
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: \n"
-"Report-Msgid-Bugs-To: EMAIL\n"
-"POT-Creation-Date: 2023-03-15 09:04+0000\n"
-"PO-Revision-Date: 2023-03-15 08:28+0000\n"
-"Language-Team: Chinese Simplified (https://www.transifex.com/owncloud-org/teams/6149/zh-Hans/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: zh-Hans\n"
-"Plural-Forms: nplurals=1; plural=0;\n"
-
-#: pkg/service/templates.go:30
-msgid "Access to Space {space} lost"
-msgstr ""
-
-#: pkg/service/templates.go:45
-msgid "Access to {resource} expired"
-msgstr ""
-
-#: pkg/service/templates.go:29
-msgid "Membership expired"
-msgstr ""
-
-#: pkg/service/templates.go:14
-msgid "Removed from Space"
-msgstr ""
-
-#: pkg/service/templates.go:34
-msgid "Resource shared"
-msgstr ""
-
-#: pkg/service/templates.go:39
-msgid "Resource unshared"
-msgstr ""
-
-#: pkg/service/templates.go:44
-msgid "Share expired"
-msgstr ""
-
-#: pkg/service/templates.go:24
-msgid "Space deleted"
-msgstr ""
-
-#: pkg/service/templates.go:19
-msgid "Space disabled"
-msgstr ""
-
-#: pkg/service/templates.go:9
-msgid "Space shared"
-msgstr ""
-
-#: pkg/service/templates.go:10
-msgid "{user} added you to Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:25
-msgid "{user} deleted Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:20
-msgid "{user} disabled Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:15
-msgid "{user} removed you from Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:35
-msgid "{user} shared {resource} with you"
-msgstr ""
-
-#: pkg/service/templates.go:40
-msgid "{user} unshared {resource} with you"
-msgstr ""
diff --git a/services/userlog/pkg/service/l10n/locale/zh/LC_MESSAGES/userlog.po b/services/userlog/pkg/service/l10n/locale/zh/LC_MESSAGES/userlog.po
deleted file mode 100644
index 2785bd05fe3..00000000000
--- a/services/userlog/pkg/service/l10n/locale/zh/LC_MESSAGES/userlog.po
+++ /dev/null
@@ -1,82 +0,0 @@
-# SOME DESCRIPTIVE TITLE.
-# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
-# This file is distributed under the same license as the PACKAGE package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
-# 
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: \n"
-"Report-Msgid-Bugs-To: EMAIL\n"
-"POT-Creation-Date: 2023-03-15 09:04+0000\n"
-"PO-Revision-Date: 2023-03-15 08:28+0000\n"
-"Language-Team: Chinese (https://www.transifex.com/owncloud-org/teams/6149/zh/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: zh\n"
-"Plural-Forms: nplurals=1; plural=0;\n"
-
-#: pkg/service/templates.go:30
-msgid "Access to Space {space} lost"
-msgstr ""
-
-#: pkg/service/templates.go:45
-msgid "Access to {resource} expired"
-msgstr ""
-
-#: pkg/service/templates.go:29
-msgid "Membership expired"
-msgstr ""
-
-#: pkg/service/templates.go:14
-msgid "Removed from Space"
-msgstr ""
-
-#: pkg/service/templates.go:34
-msgid "Resource shared"
-msgstr ""
-
-#: pkg/service/templates.go:39
-msgid "Resource unshared"
-msgstr ""
-
-#: pkg/service/templates.go:44
-msgid "Share expired"
-msgstr ""
-
-#: pkg/service/templates.go:24
-msgid "Space deleted"
-msgstr ""
-
-#: pkg/service/templates.go:19
-msgid "Space disabled"
-msgstr ""
-
-#: pkg/service/templates.go:9
-msgid "Space shared"
-msgstr ""
-
-#: pkg/service/templates.go:10
-msgid "{user} added you to Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:25
-msgid "{user} deleted Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:20
-msgid "{user} disabled Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:15
-msgid "{user} removed you from Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:35
-msgid "{user} shared {resource} with you"
-msgstr ""
-
-#: pkg/service/templates.go:40
-msgid "{user} unshared {resource} with you"
-msgstr ""
diff --git a/services/userlog/pkg/service/l10n/locale/zh_CN.GB2312/LC_MESSAGES/userlog.po b/services/userlog/pkg/service/l10n/locale/zh_CN.GB2312/LC_MESSAGES/userlog.po
deleted file mode 100644
index b117e9db5c7..00000000000
--- a/services/userlog/pkg/service/l10n/locale/zh_CN.GB2312/LC_MESSAGES/userlog.po
+++ /dev/null
@@ -1,82 +0,0 @@
-# SOME DESCRIPTIVE TITLE.
-# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
-# This file is distributed under the same license as the PACKAGE package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
-# 
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: \n"
-"Report-Msgid-Bugs-To: EMAIL\n"
-"POT-Creation-Date: 2023-03-15 09:04+0000\n"
-"PO-Revision-Date: 2023-03-15 08:28+0000\n"
-"Language-Team: Chinese (China) (GB2312) (https://www.transifex.com/owncloud-org/teams/6149/zh_CN.GB2312/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: zh_CN.GB2312\n"
-"Plural-Forms: nplurals=1; plural=0;\n"
-
-#: pkg/service/templates.go:30
-msgid "Access to Space {space} lost"
-msgstr ""
-
-#: pkg/service/templates.go:45
-msgid "Access to {resource} expired"
-msgstr ""
-
-#: pkg/service/templates.go:29
-msgid "Membership expired"
-msgstr ""
-
-#: pkg/service/templates.go:14
-msgid "Removed from Space"
-msgstr ""
-
-#: pkg/service/templates.go:34
-msgid "Resource shared"
-msgstr ""
-
-#: pkg/service/templates.go:39
-msgid "Resource unshared"
-msgstr ""
-
-#: pkg/service/templates.go:44
-msgid "Share expired"
-msgstr ""
-
-#: pkg/service/templates.go:24
-msgid "Space deleted"
-msgstr ""
-
-#: pkg/service/templates.go:19
-msgid "Space disabled"
-msgstr ""
-
-#: pkg/service/templates.go:9
-msgid "Space shared"
-msgstr ""
-
-#: pkg/service/templates.go:10
-msgid "{user} added you to Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:25
-msgid "{user} deleted Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:20
-msgid "{user} disabled Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:15
-msgid "{user} removed you from Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:35
-msgid "{user} shared {resource} with you"
-msgstr ""
-
-#: pkg/service/templates.go:40
-msgid "{user} unshared {resource} with you"
-msgstr ""
diff --git a/services/userlog/pkg/service/l10n/locale/zh_TW.Big5/LC_MESSAGES/userlog.po b/services/userlog/pkg/service/l10n/locale/zh_TW.Big5/LC_MESSAGES/userlog.po
deleted file mode 100644
index 0b395c1fed1..00000000000
--- a/services/userlog/pkg/service/l10n/locale/zh_TW.Big5/LC_MESSAGES/userlog.po
+++ /dev/null
@@ -1,82 +0,0 @@
-# SOME DESCRIPTIVE TITLE.
-# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
-# This file is distributed under the same license as the PACKAGE package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
-# 
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: \n"
-"Report-Msgid-Bugs-To: EMAIL\n"
-"POT-Creation-Date: 2023-03-15 09:04+0000\n"
-"PO-Revision-Date: 2023-03-15 08:28+0000\n"
-"Language-Team: Chinese (Taiwan) (Big5)  (https://www.transifex.com/owncloud-org/teams/6149/zh_TW.Big5/)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Language: zh_TW.Big5\n"
-"Plural-Forms: nplurals=1; plural=0;\n"
-
-#: pkg/service/templates.go:30
-msgid "Access to Space {space} lost"
-msgstr ""
-
-#: pkg/service/templates.go:45
-msgid "Access to {resource} expired"
-msgstr ""
-
-#: pkg/service/templates.go:29
-msgid "Membership expired"
-msgstr ""
-
-#: pkg/service/templates.go:14
-msgid "Removed from Space"
-msgstr ""
-
-#: pkg/service/templates.go:34
-msgid "Resource shared"
-msgstr ""
-
-#: pkg/service/templates.go:39
-msgid "Resource unshared"
-msgstr ""
-
-#: pkg/service/templates.go:44
-msgid "Share expired"
-msgstr ""
-
-#: pkg/service/templates.go:24
-msgid "Space deleted"
-msgstr ""
-
-#: pkg/service/templates.go:19
-msgid "Space disabled"
-msgstr ""
-
-#: pkg/service/templates.go:9
-msgid "Space shared"
-msgstr ""
-
-#: pkg/service/templates.go:10
-msgid "{user} added you to Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:25
-msgid "{user} deleted Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:20
-msgid "{user} disabled Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:15
-msgid "{user} removed you from Space {space}"
-msgstr ""
-
-#: pkg/service/templates.go:35
-msgid "{user} shared {resource} with you"
-msgstr ""
-
-#: pkg/service/templates.go:40
-msgid "{user} unshared {resource} with you"
-msgstr ""


Test patch:
diff --git a/services/graph/pkg/identity/ldap_education_class_test.go b/services/graph/pkg/identity/ldap_education_class_test.go
index 682e4d907c9..3f328a4cbd9 100644
--- a/services/graph/pkg/identity/ldap_education_class_test.go
+++ b/services/graph/pkg/identity/ldap_education_class_test.go
@@ -275,7 +275,7 @@ func TestGetEducationClassMembers(t *testing.T) {
 			Scope:      0,
 			SizeLimit:  1,
 			Filter:     "(objectClass=inetOrgPerson)",
-			Attributes: []string{"displayname", "entryUUID", "mail", "uid", "sn", "givenname", "userEnabledAttribute"},
+			Attributes: []string{"displayname", "entryUUID", "mail", "uid", "sn", "givenname", "userEnabledAttribute", "userTypeAttribute"},
 			Controls:   []ldap.Control(nil),
 		}
 		lm.On("Search", user_sr).Return(&ldap.SearchResult{Entries: []*ldap.Entry{userEntry}}, nil)
diff --git a/services/graph/pkg/identity/ldap_education_school_test.go b/services/graph/pkg/identity/ldap_education_school_test.go
index ffcbd918a78..c1b4e3d2f52 100644
--- a/services/graph/pkg/identity/ldap_education_school_test.go
+++ b/services/graph/pkg/identity/ldap_education_school_test.go
@@ -22,6 +22,7 @@ var eduConfig = config.LDAP{
 	UserEmailAttribute:       "mail",
 	UserNameAttribute:        "uid",
 	UserEnabledAttribute:     "userEnabledAttribute",
+	UserTypeAttribute:        "userTypeAttribute",
 
 	GroupBaseDN:        "ou=groups,dc=test",
 	GroupObjectClass:   "groupOfNames",
diff --git a/services/graph/pkg/identity/ldap_education_user_test.go b/services/graph/pkg/identity/ldap_education_user_test.go
index dc4777e4d0e..3e7d3871747 100644
--- a/services/graph/pkg/identity/ldap_education_user_test.go
+++ b/services/graph/pkg/identity/ldap_education_user_test.go
@@ -11,7 +11,19 @@ import (
 	"github.com/test-go/testify/mock"
 )
 
-var eduUserAttrs = []string{"displayname", "entryUUID", "mail", "uid", "sn", "givenname", "userEnabledAttribute", "oCExternalIdentity", "userClass", "ocMemberOfSchool"}
+var eduUserAttrs = []string{
+	"displayname",
+	"entryUUID",
+	"mail",
+	"uid",
+	"sn",
+	"givenname",
+	"userEnabledAttribute",
+	"userTypeAttribute",
+	"oCExternalIdentity",
+	"userClass",
+	"ocMemberOfSchool",
+}
 
 var eduUserEntry = ldap.NewEntry("uid=user,ou=people,dc=test",
 	map[string][]string{
@@ -24,6 +36,7 @@ var eduUserEntry = ldap.NewEntry("uid=user,ou=people,dc=test",
 			"$ http://idp $ testuser",
 			"xxx $ http://idpnew $ xxxxx-xxxxx-xxxxx",
 		},
+		"userTypeAttribute": {"Member"},
 	})
 var renamedEduUserEntry = ldap.NewEntry("uid=newtestuser,ou=people,dc=test",
 	map[string][]string{
@@ -36,6 +49,7 @@ var renamedEduUserEntry = ldap.NewEntry("uid=newtestuser,ou=people,dc=test",
 			"$ http://idp $ testuser",
 			"xxx $ http://idpnew $ xxxxx-xxxxx-xxxxx",
 		},
+		"userTypeAttribute": {"Guest"},
 	})
 var eduUserEntryWithSchool = ldap.NewEntry("uid=user,ou=people,dc=test",
 	map[string][]string{
@@ -88,6 +102,7 @@ func TestCreateEducationUser(t *testing.T) {
 	user.SetOnPremisesSamAccountName("testuser")
 	user.SetMail("testuser@example.org")
 	user.SetPrimaryRole("student")
+	user.SetUserType(("Member"))
 	eduUser, err := b.CreateEducationUser(context.Background(), *user)
 	lm.AssertNumberOfCalls(t, "Add", 1)
 	lm.AssertNumberOfCalls(t, "Search", 1)
@@ -97,6 +112,7 @@ func TestCreateEducationUser(t *testing.T) {
 	assert.Equal(t, eduUser.GetOnPremisesSamAccountName(), user.GetOnPremisesSamAccountName())
 	assert.Equal(t, "abcd-defg", eduUser.GetId())
 	assert.Equal(t, eduUser.GetPrimaryRole(), user.GetPrimaryRole())
+	assert.Equal(t, eduUser.GetUserType(), user.GetUserType())
 }
 
 func TestDeleteEducationUser(t *testing.T) {
@@ -174,7 +190,7 @@ func TestUpdateEducationUser(t *testing.T) {
 		Scope:      0,
 		SizeLimit:  1,
 		Filter:     "(objectClass=inetOrgPerson)",
-		Attributes: []string{"displayname", "entryUUID", "mail", "uid", "sn", "givenname", "userEnabledAttribute"},
+		Attributes: []string{"displayname", "entryUUID", "mail", "uid", "sn", "givenname", "userEnabledAttribute", "userTypeAttribute"},
 	}
 	eduUserLookupReq := &ldap.SearchRequest{
 		BaseDN:     "uid=newtestuser,ou=people,dc=test",
@@ -249,4 +265,5 @@ func TestUpdateEducationUser(t *testing.T) {
 	assert.Nil(t, err)
 	assert.Equal(t, eduUser.GetOnPremisesSamAccountName(), "newtestuser")
 	assert.Equal(t, "abcd-defg", eduUser.GetId())
+	assert.Equal(t, "Guest", eduUser.GetUserType())
 }
diff --git a/services/graph/pkg/identity/ldap_group_test.go b/services/graph/pkg/identity/ldap_group_test.go
index 511076b01c5..d375d1cef0a 100644
--- a/services/graph/pkg/identity/ldap_group_test.go
+++ b/services/graph/pkg/identity/ldap_group_test.go
@@ -100,14 +100,14 @@ func TestGetGroup(t *testing.T) {
 		BaseDN:     "uid=user,ou=people,dc=test",
 		SizeLimit:  1,
 		Filter:     "(objectClass=inetOrgPerson)",
-		Attributes: []string{"displayname", "entryUUID", "mail", "uid", "sn", "givenname", "userEnabledAttribute"},
+		Attributes: []string{"displayname", "entryUUID", "mail", "uid", "sn", "givenname", "userEnabledAttribute", "userTypeAttribute"},
 		Controls:   []ldap.Control(nil),
 	}
 	sr3 := &ldap.SearchRequest{
 		BaseDN:     "uid=invalid,ou=people,dc=test",
 		SizeLimit:  1,
 		Filter:     "(objectClass=inetOrgPerson)",
-		Attributes: []string{"displayname", "entryUUID", "mail", "uid", "sn", "givenname", "userEnabledAttribute"},
+		Attributes: []string{"displayname", "entryUUID", "mail", "uid", "sn", "givenname", "userEnabledAttribute", "userTypeAttribute"},
 		Controls:   []ldap.Control(nil),
 	}
 
@@ -195,14 +195,14 @@ func TestGetGroups(t *testing.T) {
 		BaseDN:     "uid=user,ou=people,dc=test",
 		SizeLimit:  1,
 		Filter:     "(objectClass=inetOrgPerson)",
-		Attributes: []string{"displayname", "entryUUID", "mail", "uid", "sn", "givenname", "userEnabledAttribute"},
+		Attributes: []string{"displayname", "entryUUID", "mail", "uid", "sn", "givenname", "userEnabledAttribute", "userTypeAttribute"},
 		Controls:   []ldap.Control(nil),
 	}
 	sr3 := &ldap.SearchRequest{
 		BaseDN:     "uid=invalid,ou=people,dc=test",
 		SizeLimit:  1,
 		Filter:     "(objectClass=inetOrgPerson)",
-		Attributes: []string{"displayname", "entryUUID", "mail", "uid", "sn", "givenname", "userEnabledAttribute"},
+		Attributes: []string{"displayname", "entryUUID", "mail", "uid", "sn", "givenname", "userEnabledAttribute", "userTypeAttribute"},
 		Controls:   []ldap.Control(nil),
 	}
 
diff --git a/services/graph/pkg/identity/ldap_test.go b/services/graph/pkg/identity/ldap_test.go
index bf99dca8160..1364c0c3c3e 100644
--- a/services/graph/pkg/identity/ldap_test.go
+++ b/services/graph/pkg/identity/ldap_test.go
@@ -36,6 +36,7 @@ var lconfig = config.LDAP{
 	UserEmailAttribute:       "mail",
 	UserNameAttribute:        "uid",
 	UserEnabledAttribute:     "userEnabledAttribute",
+	UserTypeAttribute:        "userTypeAttribute",
 	LdapDisabledUsersGroupDN: disableUsersGroup,
 	DisableUserMechanism:     "attribute",
 
@@ -58,6 +59,7 @@ var userEntry = ldap.NewEntry("uid=user",
 		"sn":                   {"surname"},
 		"givenname":            {"givenName"},
 		"userenabledattribute": {"TRUE"},
+		"usertypeattribute":    {"Member"},
 	})
 
 var invalidUserEntry = ldap.NewEntry("uid=user",
@@ -107,6 +109,7 @@ func TestCreateUser(t *testing.T) {
 	userName := "user"
 	surname := "surname"
 	givenName := "givenName"
+	userType := "Member"
 
 	ar := ldap.NewAddRequest(fmt.Sprintf("uid=user,%s", lconfig.UserBaseDN), nil)
 	ar.Attribute(lconfig.UserDisplayNameAttribute, []string{displayName})
@@ -117,6 +120,7 @@ func TestCreateUser(t *testing.T) {
 	ar.Attribute("objectClass", []string{"inetOrgPerson", "organizationalPerson", "person", "top", "ownCloudUser"})
 	ar.Attribute("cn", []string{userName})
 	ar.Attribute(lconfig.UserEnabledAttribute, []string{"TRUE"})
+	ar.Attribute(lconfig.UserTypeAttribute, []string{"Member"})
 
 	l := &mocks.Client{}
 	l.On("Search", mock.Anything).
@@ -135,6 +139,7 @@ func TestCreateUser(t *testing.T) {
 	user.SetSurname(surname)
 	user.SetGivenName(givenName)
 	user.SetAccountEnabled(true)
+	user.SetUserType(userType)
 
 	c := lconfig
 	c.UseServerUUID = true
@@ -148,6 +153,7 @@ func TestCreateUser(t *testing.T) {
 	assert.Equal(t, givenName, newUser.GetGivenName())
 	assert.Equal(t, surname, newUser.GetSurname())
 	assert.True(t, newUser.GetAccountEnabled())
+	assert.Equal(t, userType, newUser.GetUserType())
 }
 
 func TestCreateUserModelFromLDAP(t *testing.T) {
@@ -294,6 +300,7 @@ func TestGetUsers(t *testing.T) {
 func TestUpdateUser(t *testing.T) {
 	falseBool := false
 	trueBool := true
+	memberType := "Member"
 
 	type userProps struct {
 		id                       string
@@ -301,6 +308,7 @@ func TestUpdateUser(t *testing.T) {
 		displayName              string
 		onPremisesSamAccountName string
 		accountEnabled           *bool
+		userType                 *string
 	}
 	type args struct {
 		nameOrID             string
@@ -340,7 +348,7 @@ func TestUpdateUser(t *testing.T) {
 							ldap.ScopeWholeSubtree,
 							ldap.NeverDerefAliases, 1, 0, false,
 							"(&(objectClass=inetOrgPerson)(|(uid=testUser)(entryUUID=testUser)))",
-							[]string{"displayname", "entryUUID", "mail", "uid", "sn", "givenname", "userEnabledAttribute"},
+							[]string{"displayname", "entryUUID", "mail", "uid", "sn", "givenname", "userEnabledAttribute", "userTypeAttribute"},
 							nil,
 						),
 					},
@@ -384,7 +392,7 @@ func TestUpdateUser(t *testing.T) {
 							ldap.ScopeWholeSubtree,
 							ldap.NeverDerefAliases, 1, 0, false,
 							"(&(objectClass=inetOrgPerson)(|(uid=testUser)(entryUUID=testUser)))",
-							[]string{"displayname", "entryUUID", "mail", "uid", "sn", "givenname", "userEnabledAttribute"},
+							[]string{"displayname", "entryUUID", "mail", "uid", "sn", "givenname", "userEnabledAttribute", "userTypeAttribute"},
 							nil,
 						),
 					},
@@ -428,7 +436,7 @@ func TestUpdateUser(t *testing.T) {
 							TimeLimit:    0,
 							TypesOnly:    false,
 							Filter:       "(objectClass=inetOrgPerson)",
-							Attributes:   []string{"displayname", "entryUUID", "mail", "uid", "sn", "givenname", "userEnabledAttribute"},
+							Attributes:   []string{"displayname", "entryUUID", "mail", "uid", "sn", "givenname", "userEnabledAttribute", "userTypeAttribute"},
 							Controls:     []ldap.Control(nil),
 						},
 					},
@@ -513,7 +521,7 @@ func TestUpdateUser(t *testing.T) {
 							ldap.ScopeWholeSubtree,
 							ldap.NeverDerefAliases, 1, 0, false,
 							"(&(objectClass=inetOrgPerson)(|(uid=testUser)(entryUUID=testUser)))",
-							[]string{"displayname", "entryUUID", "mail", "uid", "sn", "givenname", "userEnabledAttribute"},
+							[]string{"displayname", "entryUUID", "mail", "uid", "sn", "givenname", "userEnabledAttribute", "userTypeAttribute"},
 							nil,
 						),
 					},
@@ -557,7 +565,7 @@ func TestUpdateUser(t *testing.T) {
 							TimeLimit:    0,
 							TypesOnly:    false,
 							Filter:       "(objectClass=inetOrgPerson)",
-							Attributes:   []string{"displayname", "entryUUID", "mail", "uid", "sn", "givenname", "userEnabledAttribute"},
+							Attributes:   []string{"displayname", "entryUUID", "mail", "uid", "sn", "givenname", "userEnabledAttribute", "userTypeAttribute"},
 							Controls:     []ldap.Control(nil),
 						},
 					},
@@ -642,7 +650,7 @@ func TestUpdateUser(t *testing.T) {
 							ldap.ScopeWholeSubtree,
 							ldap.NeverDerefAliases, 1, 0, false,
 							"(&(objectClass=inetOrgPerson)(|(uid=testUser)(entryUUID=testUser)))",
-							[]string{"displayname", "entryUUID", "mail", "uid", "sn", "givenname", "userEnabledAttribute"},
+							[]string{"displayname", "entryUUID", "mail", "uid", "sn", "givenname", "userEnabledAttribute", "userTypeAttribute"},
 							nil,
 						),
 					},
@@ -738,7 +746,7 @@ func TestUpdateUser(t *testing.T) {
 							TimeLimit:    0,
 							TypesOnly:    false,
 							Filter:       "(objectClass=inetOrgPerson)",
-							Attributes:   []string{"displayname", "entryUUID", "mail", "uid", "sn", "givenname", "userEnabledAttribute"},
+							Attributes:   []string{"displayname", "entryUUID", "mail", "uid", "sn", "givenname", "userEnabledAttribute", "userTypeAttribute"},
 							Controls:     []ldap.Control(nil),
 						},
 					},
@@ -831,7 +839,7 @@ func TestUpdateUser(t *testing.T) {
 							ldap.ScopeWholeSubtree,
 							ldap.NeverDerefAliases, 1, 0, false,
 							"(&(objectClass=inetOrgPerson)(|(uid=testUser)(entryUUID=testUser)))",
-							[]string{"displayname", "entryUUID", "mail", "uid", "sn", "givenname", "userEnabledAttribute"},
+							[]string{"displayname", "entryUUID", "mail", "uid", "sn", "givenname", "userEnabledAttribute", "userTypeAttribute"},
 							nil,
 						),
 					},
@@ -875,7 +883,7 @@ func TestUpdateUser(t *testing.T) {
 							TimeLimit:    0,
 							TypesOnly:    false,
 							Filter:       "(objectClass=inetOrgPerson)",
-							Attributes:   []string{"displayname", "entryUUID", "mail", "uid", "sn", "givenname", "userEnabledAttribute"},
+							Attributes:   []string{"displayname", "entryUUID", "mail", "uid", "sn", "givenname", "userEnabledAttribute", "userTypeAttribute"},
 							Controls:     []ldap.Control(nil),
 						},
 					},
@@ -961,7 +969,7 @@ func TestUpdateUser(t *testing.T) {
 							ldap.ScopeWholeSubtree,
 							ldap.NeverDerefAliases, 1, 0, false,
 							"(&(objectClass=inetOrgPerson)(|(uid=testUser)(entryUUID=testUser)))",
-							[]string{"displayname", "entryUUID", "mail", "uid", "sn", "givenname", "userEnabledAttribute"},
+							[]string{"displayname", "entryUUID", "mail", "uid", "sn", "givenname", "userEnabledAttribute", "userTypeAttribute"},
 							nil,
 						),
 					},
@@ -1064,7 +1072,7 @@ func TestUpdateUser(t *testing.T) {
 							ldap.ScopeBaseObject,
 							ldap.NeverDerefAliases, 1, 0, false,
 							"(objectClass=inetOrgPerson)",
-							[]string{"displayname", "entryUUID", "mail", "uid", "sn", "givenname", "userEnabledAttribute"},
+							[]string{"displayname", "entryUUID", "mail", "uid", "sn", "givenname", "userEnabledAttribute", "userTypeAttribute"},
 							[]ldap.Control(nil),
 						),
 					},
@@ -1127,7 +1135,7 @@ func TestUpdateUser(t *testing.T) {
 							ldap.ScopeWholeSubtree,
 							ldap.NeverDerefAliases, 1, 0, false,
 							"(&(objectClass=inetOrgPerson)(|(uid=testUser)(entryUUID=testUser)))",
-							[]string{"displayname", "entryUUID", "mail", "uid", "sn", "givenname", "userEnabledAttribute"},
+							[]string{"displayname", "entryUUID", "mail", "uid", "sn", "givenname", "userEnabledAttribute", "userTypeAttribute"},
 							nil,
 						),
 					},
@@ -1230,7 +1238,7 @@ func TestUpdateUser(t *testing.T) {
 							ldap.ScopeBaseObject,
 							ldap.NeverDerefAliases, 1, 0, false,
 							"(objectClass=inetOrgPerson)",
-							[]string{"displayname", "entryUUID", "mail", "uid", "sn", "givenname", "userEnabledAttribute"},
+							[]string{"displayname", "entryUUID", "mail", "uid", "sn", "givenname", "userEnabledAttribute", "userTypeAttribute"},
 							[]ldap.Control(nil),
 						),
 					},
@@ -1265,6 +1273,144 @@ func TestUpdateUser(t *testing.T) {
 				},
 			},
 		},
+		{
+			name: "Test changing userType",
+			args: args{
+				nameOrID: "testUser",
+				userProps: userProps{
+					userType: &memberType,
+				},
+				disableUserMechanism: "group",
+			},
+			want: &userProps{
+				id:                       "testUser",
+				mail:                     "testuser@example.org",
+				displayName:              "testUser",
+				onPremisesSamAccountName: "testUser",
+				userType:                 &memberType,
+			},
+			assertion: func(t assert.TestingT, err error, args ...interface{}) bool {
+				return assert.Nil(t, err, args...)
+			},
+			ldapMocks: []mockInputs{
+				{
+					funcName: "Search",
+					args: []interface{}{
+						ldap.NewSearchRequest(
+							"ou=people,dc=test",
+							ldap.ScopeWholeSubtree,
+							ldap.NeverDerefAliases, 1, 0, false,
+							"(&(objectClass=inetOrgPerson)(|(uid=testUser)(entryUUID=testUser)))",
+							[]string{"displayname", "entryUUID", "mail", "uid", "sn", "givenname", "userEnabledAttribute", "userTypeAttribute"},
+							nil,
+						),
+					},
+					returns: []interface{}{
+						&ldap.SearchResult{
+							Entries: []*ldap.Entry{
+								{
+									DN: "uid=name",
+									Attributes: []*ldap.EntryAttribute{
+										{
+											Name:   "displayname",
+											Values: []string{"testuser@example.org"},
+										},
+										{
+											Name:   "entryUUID",
+											Values: []string{"testUser"},
+										},
+										{
+											Name:   "mail",
+											Values: []string{"testuser@example.org"},
+										},
+										{
+											Name:   lconfig.UserTypeAttribute,
+											Values: []string{"Guest"},
+										},
+									},
+								},
+							},
+						},
+						nil,
+					},
+				},
+				{
+					funcName: "Modify",
+					args: []interface{}{
+						&ldap.ModifyRequest{
+							DN: "uid=name",
+							Changes: []ldap.Change{
+								{
+									Operation: ldap.ReplaceAttribute,
+									Modification: ldap.PartialAttribute{
+										Type: "userTypeAttribute",
+										Vals: []string{"Member"},
+									},
+								},
+							},
+							Controls: []ldap.Control(nil),
+						},
+					},
+					returns: []interface{}{nil},
+				},
+				{
+					funcName: "Modify",
+					args: []interface{}{
+						&ldap.ModifyRequest{
+							DN:       "uid=name",
+							Changes:  []ldap.Change(nil),
+							Controls: []ldap.Control(nil),
+						},
+					},
+					returns: []interface{}{nil},
+				},
+				{
+					funcName: "Search",
+					args: []interface{}{
+						ldap.NewSearchRequest(
+							"uid=name",
+							ldap.ScopeBaseObject,
+							ldap.NeverDerefAliases, 1, 0, false,
+							"(objectClass=inetOrgPerson)",
+							[]string{"displayname", "entryUUID", "mail", "uid", "sn", "givenname", "userEnabledAttribute", "userTypeAttribute"},
+							[]ldap.Control(nil),
+						),
+					},
+					returns: []interface{}{
+						&ldap.SearchResult{
+							Entries: []*ldap.Entry{
+								{
+									DN: "uid=name",
+									Attributes: []*ldap.EntryAttribute{
+										{
+											Name:   "uid",
+											Values: []string{"testUser"},
+										},
+										{
+											Name:   "displayname",
+											Values: []string{"testUser"},
+										},
+										{
+											Name:   "entryUUID",
+											Values: []string{"testUser"},
+										},
+										{
+											Name:   "mail",
+											Values: []string{"testuser@example.org"},
+										},
+										{
+											Name:   lconfig.UserTypeAttribute,
+											Values: []string{"Member"},
+										},
+									},
+								},
+							},
+						},
+						nil,
+					},
+				},
+			},
+		},
 	}
 	for _, tt := range tests {
 		t.Run(tt.name, func(t *testing.T) {
@@ -1283,6 +1429,7 @@ func TestUpdateUser(t *testing.T) {
 				DisplayName:              &tt.args.userProps.displayName,
 				OnPremisesSamAccountName: &tt.args.userProps.onPremisesSamAccountName,
 				AccountEnabled:           tt.args.userProps.accountEnabled,
+				UserType:                 tt.args.userProps.userType,
 			}
 
 			emptyString := ""
@@ -1295,6 +1442,7 @@ func TestUpdateUser(t *testing.T) {
 					OnPremisesSamAccountName: &tt.want.onPremisesSamAccountName,
 					Surname:                  &emptyString,
 					GivenName:                &emptyString,
+					UserType:                 tt.want.userType,
 				}
 
 				if tt.want.accountEnabled != nil {
diff --git a/services/graph/pkg/service/v0/educationuser_test.go b/services/graph/pkg/service/v0/educationuser_test.go
index ed1c833e114..8385ebf3f6e 100644
--- a/services/graph/pkg/service/v0/educationuser_test.go
+++ b/services/graph/pkg/service/v0/educationuser_test.go
@@ -271,9 +271,6 @@ var _ = Describe("EducationUsers", func() {
 		})
 
 		It("handles bad Mails", func() {
-			user.Mail = nil
-			assertHandleBadAttributes(user)
-
 			user.SetMail("not-a-mail-address")
 			assertHandleBadAttributes(user)
 		})
@@ -297,6 +294,87 @@ var _ = Describe("EducationUsers", func() {
 			svc.PostEducationUser(rr, r)
 
 			Expect(rr.Code).To(Equal(http.StatusOK))
+			data, err := io.ReadAll(rr.Body)
+			Expect(err).ToNot(HaveOccurred())
+
+			createdUser := libregraph.EducationUser{}
+			err = json.Unmarshal(data, &createdUser)
+			Expect(err).ToNot(HaveOccurred())
+			Expect(createdUser.GetUserType()).To(Equal("Member"))
+		})
+
+		It("creates a guest user", func() {
+			roleService.On("AssignRoleToUser", mock.Anything, mock.Anything).Return(&settingssvc.AssignRoleToUserResponse{}, nil)
+			identityEducationBackend.On("CreateEducationUser", mock.Anything, mock.Anything).Return(func(ctx context.Context, user libregraph.EducationUser) *libregraph.EducationUser {
+				user.SetId("/users/user")
+				return &user
+			}, nil)
+
+			user.SetUserType("Guest")
+			userJson, err := json.Marshal(user)
+			Expect(err).ToNot(HaveOccurred())
+
+			r := httptest.NewRequest(http.MethodPost, "/graph/v1.0/education/users", bytes.NewBuffer(userJson))
+			r = r.WithContext(revactx.ContextSetUser(ctx, currentUser))
+			svc.PostEducationUser(rr, r)
+
+			Expect(rr.Code).To(Equal(http.StatusOK))
+			data, err := io.ReadAll(rr.Body)
+			Expect(err).ToNot(HaveOccurred())
+
+			createdUser := libregraph.EducationUser{}
+			err = json.Unmarshal(data, &createdUser)
+			Expect(err).ToNot(HaveOccurred())
+			Expect(createdUser.GetUserType()).To(Equal("Guest"))
+		})
+
+		It("creates a member user", func() {
+			roleService.On("AssignRoleToUser", mock.Anything, mock.Anything).Return(&settingssvc.AssignRoleToUserResponse{}, nil)
+			identityEducationBackend.On("CreateEducationUser", mock.Anything, mock.Anything).Return(func(ctx context.Context, user libregraph.EducationUser) *libregraph.EducationUser {
+				user.SetId("/users/user")
+				return &user
+			}, nil)
+
+			user.SetUserType("Member")
+			userJson, err := json.Marshal(user)
+			Expect(err).ToNot(HaveOccurred())
+
+			r := httptest.NewRequest(http.MethodPost, "/graph/v1.0/education/users", bytes.NewBuffer(userJson))
+			r = r.WithContext(revactx.ContextSetUser(ctx, currentUser))
+			svc.PostEducationUser(rr, r)
+
+			Expect(rr.Code).To(Equal(http.StatusOK))
+			data, err := io.ReadAll(rr.Body)
+			Expect(err).ToNot(HaveOccurred())
+
+			createdUser := libregraph.EducationUser{}
+			err = json.Unmarshal(data, &createdUser)
+			Expect(err).ToNot(HaveOccurred())
+			Expect(createdUser.GetUserType()).To(Equal("Member"))
+		})
+
+		It("creates a user without email", func() {
+			roleService.On("AssignRoleToUser", mock.Anything, mock.Anything).Return(&settingssvc.AssignRoleToUserResponse{}, nil)
+			identityEducationBackend.On("CreateEducationUser", mock.Anything, mock.Anything).Return(func(ctx context.Context, user libregraph.EducationUser) *libregraph.EducationUser {
+				user.SetId("/users/user")
+				return &user
+			}, nil)
+			user.Mail = nil
+			userJson, err := json.Marshal(user)
+			Expect(err).ToNot(HaveOccurred())
+
+			r := httptest.NewRequest(http.MethodPost, "/graph/v1.0/education/users", bytes.NewBuffer(userJson))
+			r = r.WithContext(revactx.ContextSetUser(ctx, currentUser))
+			svc.PostEducationUser(rr, r)
+
+			Expect(rr.Code).To(Equal(http.StatusOK))
+			data, err := io.ReadAll(rr.Body)
+			Expect(err).ToNot(HaveOccurred())
+
+			createdUser := libregraph.EducationUser{}
+			err = json.Unmarshal(data, &createdUser)
+			Expect(err).ToNot(HaveOccurred())
+			Expect(createdUser.GetMail()).To(Equal(""))
 		})
 	})
 
@@ -406,6 +484,20 @@ var _ = Describe("EducationUsers", func() {
 			Expect(rr.Code).To(Equal(http.StatusBadRequest))
 		})
 
+		It("handles invalid userType", func() {
+			user.SetUserType("Clown")
+			data, err := json.Marshal(user)
+			Expect(err).ToNot(HaveOccurred())
+
+			r := httptest.NewRequest(http.MethodPost, "/graph/v1.0/education/users?$invalid=true", bytes.NewBuffer(data))
+			rctx := chi.NewRouteContext()
+			rctx.URLParams.Add("userID", user.GetId())
+			r = r.WithContext(context.WithValue(revactx.ContextSetUser(ctx, currentUser), chi.RouteCtxKey, rctx))
+			svc.PatchEducationUser(rr, r)
+
+			Expect(rr.Code).To(Equal(http.StatusBadRequest))
+		})
+
 		It("updates attributes", func() {
 			identityEducationBackend.On("UpdateEducationUser", mock.Anything, user.GetId(), mock.Anything).Return(user, nil)
 
diff --git a/services/graph/pkg/service/v0/users_test.go b/services/graph/pkg/service/v0/users_test.go
index a6f342fa022..95b50f6d684 100644
--- a/services/graph/pkg/service/v0/users_test.go
+++ b/services/graph/pkg/service/v0/users_test.go
@@ -588,6 +588,11 @@ var _ = Describe("Users", func() {
 			assertHandleBadAttributes(user)
 		})
 
+		It("handles invalid userType", func() {
+			user.SetUserType("Clown")
+			assertHandleBadAttributes(user)
+		})
+
 		It("creates a user", func() {
 			roleService.On("AssignRoleToUser", mock.Anything, mock.Anything).Return(&settings.AssignRoleToUserResponse{}, nil)
 			identityBackend.On("CreateUser", mock.Anything, mock.Anything).Return(func(ctx context.Context, user libregraph.User) *libregraph.User {
@@ -602,6 +607,63 @@ var _ = Describe("Users", func() {
 			svc.PostUser(rr, r)
 
 			Expect(rr.Code).To(Equal(http.StatusOK))
+			data, err := io.ReadAll(rr.Body)
+			Expect(err).ToNot(HaveOccurred())
+
+			createdUser := libregraph.User{}
+			err = json.Unmarshal(data, &createdUser)
+			Expect(err).ToNot(HaveOccurred())
+			Expect(createdUser.GetUserType()).To(Equal("Member"))
+		})
+
+		It("creates a guest user", func() {
+			roleService.On("AssignRoleToUser", mock.Anything, mock.Anything).Return(&settings.AssignRoleToUserResponse{}, nil)
+			identityBackend.On("CreateUser", mock.Anything, mock.Anything).Return(func(ctx context.Context, user libregraph.User) *libregraph.User {
+				user.SetId("/users/user")
+				return &user
+			}, nil)
+
+			user.SetUserType("Guest")
+			userJson, err := json.Marshal(user)
+			Expect(err).ToNot(HaveOccurred())
+
+			r := httptest.NewRequest(http.MethodPost, "/graph/v1.0/users", bytes.NewBuffer(userJson))
+			r = r.WithContext(revactx.ContextSetUser(ctx, currentUser))
+			svc.PostUser(rr, r)
+
+			Expect(rr.Code).To(Equal(http.StatusOK))
+			data, err := io.ReadAll(rr.Body)
+			Expect(err).ToNot(HaveOccurred())
+
+			createdUser := libregraph.User{}
+			err = json.Unmarshal(data, &createdUser)
+			Expect(err).ToNot(HaveOccurred())
+			Expect(createdUser.GetUserType()).To(Equal("Guest"))
+		})
+
+		It("creates a member user", func() {
+			roleService.On("AssignRoleToUser", mock.Anything, mock.Anything).Return(&settings.AssignRoleToUserResponse{}, nil)
+			identityBackend.On("CreateUser", mock.Anything, mock.Anything).Return(func(ctx context.Context, user libregraph.User) *libregraph.User {
+				user.SetId("/users/user")
+				return &user
+			}, nil)
+
+			user.SetUserType("Member")
+			userJson, err := json.Marshal(user)
+			Expect(err).ToNot(HaveOccurred())
+
+			r := httptest.NewRequest(http.MethodPost, "/graph/v1.0/users", bytes.NewBuffer(userJson))
+			r = r.WithContext(revactx.ContextSetUser(ctx, currentUser))
+			svc.PostUser(rr, r)
+
+			Expect(rr.Code).To(Equal(http.StatusOK))
+			data, err := io.ReadAll(rr.Body)
+			Expect(err).ToNot(HaveOccurred())
+
+			createdUser := libregraph.User{}
+			err = json.Unmarshal(data, &createdUser)
+			Expect(err).ToNot(HaveOccurred())
+			Expect(createdUser.GetUserType()).To(Equal("Member"))
 		})
 
 		Describe("Handling usernames with spaces", func() {
@@ -768,9 +830,25 @@ var _ = Describe("Users", func() {
 			Expect(rr.Code).To(Equal(http.StatusBadRequest))
 		})
 
+		It("handles invalid userType", func() {
+			user.SetUserType("Clown")
+			data, err := json.Marshal(user)
+			Expect(err).ToNot(HaveOccurred())
+
+			r := httptest.NewRequest(http.MethodPost, "/graph/v1.0/users?$invalid=true", bytes.NewBuffer(data))
+			rctx := chi.NewRouteContext()
+			rctx.URLParams.Add("userID", user.GetId())
+			r = r.WithContext(context.WithValue(revactx.ContextSetUser(ctx, currentUser), chi.RouteCtxKey, rctx))
+			svc.PatchUser(rr, r)
+
+			Expect(rr.Code).To(Equal(http.StatusBadRequest))
+		})
+
 		It("updates attributes", func() {
+			user.SetUserType("Member")
 			identityBackend.On("UpdateUser", mock.Anything, user.GetId(), mock.Anything).Return(user, nil)
 
+			user.SetUserType(("Member"))
 			user.SetDisplayName("New Display Name")
 			data, err := json.Marshal(user)
 			Expect(err).ToNot(HaveOccurred())
@@ -788,6 +866,7 @@ var _ = Describe("Users", func() {
 			updatedUser := libregraph.User{}
 			err = json.Unmarshal(data, &updatedUser)
 			Expect(err).ToNot(HaveOccurred())
+			Expect(updatedUser.GetUserType()).To(Equal("Member"))
 			Expect(updatedUser.GetDisplayName()).To(Equal("New Display Name"))
 		})
 	})
diff --git a/tests/acceptance/features/apiGraph/getGroup.feature b/tests/acceptance/features/apiGraph/getGroup.feature
index e48c2ea2fe9..16965622787 100644
--- a/tests/acceptance/features/apiGraph/getGroup.feature
+++ b/tests/acceptance/features/apiGraph/getGroup.feature
@@ -131,3 +131,35 @@ Feature: get groups and their members
       }
     }
     """
+
+
+  Scenario Outline: Get details of group with UTF-8 characters name
+    Given group "<group>" has been created
+    When user "Alice" gets details of the group "<group>" using the Graph API
+    Then the HTTP status code should be "200"
+    And the JSON data of the response should match
+    """
+    {
+      "type": "object",
+      "required": [
+        "displayName",
+        "id"
+      ],
+      "properties": {
+        "displayName": {
+          "type": "string",
+          "enum": ["<group>"]
+        },
+        "id": {
+          "type": "string",
+          "pattern": "^%group_id_pattern%$"
+        }
+      }
+    }
+    """
+    Examples:
+      | group           |
+      | España§àôœ€     |
+      | नेपाली            |
+      | $x<=>[y*z^2+1]! |
+      | եòɴԪ˯ΗՐΛɔπ     |