What happens when you've forgotten to give the Admin group access to mail files, and you have 3000 or so to manipulate? Here's some code that goes into the Database Script/Post Open event, if you can wait for the user to close and reopen their mail (or if you really are in a hurry, in the Memo Post Open event.) I have the code in a library, but it works equally well in the actual event.
The code checks for the entry, the level of the entry, and the type of entry, in case a user is clever enough to make the Admin group a person type.
This is implemented through the mail template, and deployed through the Design task.
Code
Sub SetNotesAdmin()
'dim db as the current file, the code runs in the context of the user.
'dim acl as NotesACL
'dim aclEntry as NotesACLEntry
If ( db.CurrentAccessLevel <> ACLLEVEL_MANAGER ) Then
' Don't do anything if this user doesn't have Mgr access
Else
Set acl = db.ACL
Set entry = acl.GetEntry( "AdminGroup" )
' Check if Admin group is in the ACL
If entry Is Nothing Then
'Add the proper Admin group to ACL as Mgr
Set entry = New NotesACLEntry ( acl, "AdminGroup", ACLLEVEL_MANAGER )
Call acl.Save
Else
'Check to if the user has bumped down the access level for the Admin group
If entry.Level <> ACLLEVEL_MANAGER Then
entry.Level = ACLLEVEL_MANAGER
Call acl.Save
End If
If entry.UserType <> ACLTYPE_PERSON_GROUP Then
entry.UserType = ACLTYPE_PERSON_GROUP
Call acl.Save
End If
End If
End If
End Sub